私は2つのcsvファイルを比較し、それらを検索して特定の値を見つけようとしています。以下の例。Python:2つのCSVリストを比較する
FILE ONE
のFirstName、LastNameの、年齢
ジョン、ドウ、45
ジェーン、ドウ、34
ロバート、スマイト、27
ボブ、White、56
ケーリー、ウッズ、28
FILE TWO
姓
ロバート
ジェーン
スクリプトファイルの1のを検索し、ファイル二つのFirstNameの列を使用する必要がありますFirstName列と年齢を返しますマイコードのみロバートを出力34
結果 ロバート、27 ジェーン、27それはジェーンの二行を探し続けていません。私は成功していないWhileループを使ってみました。どんな援助も大歓迎です!ありがとう!
今年は、10k行以上のファイルで50個以上のアイテムを検索しています。以下は
コード:
import csv
FileOne = open('/FileOne')
FileOneReader = csv.DictReader(FileOne)
FileTwo = open('/FileTwo')
FileTwoReader = csv.DictReader(FileTwo)
for row in FileTwoReader:
for row2 in FileOneReader:
if row['FirstName'].lower() in row2['FirstName'].lower():
print 'Name:' + row['FirstName'] + ' Age: ' + row2['Age'].lower()
理由があります。あなたのファイルの1つは、2回目の繰り返しで使い果たされます。リストにデータを保存し、そのようにチェックする必要があります。 – Abdou
CSVファイルが不審です。 [CSV形式の定義](https://tools.ietf.org/html/rfc4180#section-2)を参照してください。 row2 ['FirstName']。lower(): 'これに'行['FirstName']。lower()== row2 ['FirstName']の場合は、この '' FirstName ' .lower(): 'あなたのデータを整理した直後。 –