私の目的は、小さなcsvファイル(1列、数百行)で値を検索することです。 csvの行はすべて数字です。ここに私の試みです:Pythonを使用してcsvで値を検索できますか?
import csv
#read csv file
csv_reader = csv.reader(open('test.csv', 'rU'))
length_list = len(list(csv_reader))
value = []
for line in csv_reader:
value.append(line) #transfer contents of csv to list
def find_voucher(input_voucher, counter):
while counter < length_list:
check_voucher = input_voucher in value[counter]
if check_voucher == True:
print "TRUE"
else:
print "FALSE"
counter = counter + 1
find_voucher(1000,1)
私はスクリプトを実行すると、私はこのエラーを取得:
check_voucher = input_voucher in value[counter]
IndexError: list index out of range
まず物事:あなたの簡略化されたスクリプト完全に働きました。私はまだPythonには非常に新しいですし、私は "with"を掘り下げませんでした。 –
@BrandonDorrisこの場合、 'with'ステートメントはファイルを自動的に閉じます。その例の主なポイントは 'return'部分で、ファイルに行が非常に簡単に存在するかどうかをテストする方法を示しています。 Pythonにはイテレータであるオブジェクトがたくさんあるので、それらを偶発的に消費するという問題に直面する可能性があります。 – agf