からCSVファイルに値を返す、私が持っているとCSV:のPython 2.7:入力
T,8,101
T,10,102
T,5,103
、私の入力のための第三欄に、csvファイルを検索する必要があり、見つかった場合、同じ行の2番目の列の値を返します( "102"を検索すると "10"が返されます)。次に、結果を別の計算で使用するために保存する必要があります。 (私はちょうど今結果を印刷しようとしています)私はPython(2週間)を初めて使い、csvファイルの読み書きについて把握したいと思っていました。検索可能なすべての結果は、私に必要な答えを私に与えてくれませんでした。おかげ
ここでは私のコードです:
name = input("waiting")
import csv
with open('cards.csv', 'rt') as csvfile:
reader = csv.reader(csvfile, delimiter=',')
for row in reader:
if row[2] == name:
print(row[1])
本当にcsv-moduleを使用する必要がありますか?小さなファイルの場合は、csv-modulesコマンドを実行する必要がないので、Pythonの標準関数を使用してファイルを読むことをお勧めします。大きなファイルの場合は、データ全体をpandas DataFrameにインポートすることをお勧めします。クローズノート:私はcsv-moduleを使用しないことを勧めません。しかし、私はこの作業がそのcsv-moduleなしでも実行できると思います。私はさらに、デフォルトのCSVモジュールに対してパンダを好むだろう。 – albert
私はフィールド上で計算を行い、その値をファイルに変更するつもりです。ちょうどcsvが書き込みを行う方が簡単だと分かりました。私はまた、カンマ区切り(または私が選んだ文字)の入力文字列を取得して、csv関数はまだ良くないでしょうか?しかし、私は 'input()'の代わりに 'raw_input()'を使用してコードを取得しました – Jason
'raw_input'と' input'があなたにとって苦労している場合は、まずPythonのバージョンPython2とPython3の非常に基本的な違いを使っています。 – albert