2016-08-13 8 views
0

私は配列について学んでいる間、私の最初のいくつかのpythonスクリプトでpath = open(Testfilename)を使用しています。今は辞書を使っていますので、この機能を使って複数のファイルを開くことができるかどうかを確認したいと思います。path = open()機能を使用して複数のファイルを開く

fav_cars = {} 

for c in cars: #I have a few separate CSV files with different cars 
    path = open() 

は、私は基本的に上記のように、私は1つのファイルを開く方法を知っている。ユーザーが置くことを別の車の周りにループにしたいが、私は複数のファイルを開くことを学ぶしようとしています。私がやってみました:

path = open('F-150.csv', 'Silverado.csv', 'Mustang.csv', 'Tesla.csv', 'r'), 

をしかし、私は、エラーコードTypeError: an integer is requiredを得たとして、それはうまくいきませんでした

UPDATE:

のファイルは、「色」と呼ばれるヘッダで1列で構成されている車。 6色の6行があります

cars = ['F-150','Silverado','Mustang','Tesla','Juke','Corolla'] 

fav_cars = {} 
for c in cars: 
    path = open() # wanting to open multiple files here 
    car_colors = {} #colors for each car in cars 
    for temp_dict in path: 
     if not temp_dict.startswith("#"): #to get rid of the header "colors in the file 
      if values in user_input: #value is the car color 
        car_colors.update({values}) 
        fav_cars.update({c:car_colors}) 

、赤、青、黄、黒、白、緑、私はraw_inputを使用してそれのために呼び出され、ユーザーが入力、user_inputs、ことを私は車を使用しています。うまくいけば、これは役に立ちます。

+0

ファイルを開いたら、そのファイルで何をしたいですか? – poke

+0

car csvファイル、予想されるユーザー入力、および予想される出力の例をいくつか挙げることができますか? – Cychih

答えて

0

あなたはこのようにそれを実行する必要があります。

fav_cars = {} 

for c in cars: 
    with open(c, 'r') as f: 
     fav_vars[c] = f.readlines() 

組み込みopen関数は、引数として一つだけのファイルを見込んで、もう一つは、あなたのオープニングのためのファイルモードです。

+0

私はこれをしましたが、エラーAttributeErrorを取得しました: 'ファイル'オブジェクトには属性 'startswith'がありません。私は使用しました:temp_dict.startswith( "#")ではないので、ヘッダを削除することができます。 –

+0

私はあなたがそれらを読む前にファイルの内容を操作しようとすると思います。私は自分の答えを変更して、ファイルの内容をファイルオブジェクトのリストに追加しました。 –

+0

Hm。 fav_carsはまだ{}の出力しか得ていません。 –

関連する問題