[英]python for loop with csv file
此代碼顯示csv文件的前兩行:
with open('myfile.csv', 'r') as f:
for n, l in enumerate(f):
if n > 1:
break
print l
如何將上面的代碼集成到下面的代碼? (我正在尋找sendPackage為兩行)
with open(sys.argv[1]) as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
sendPackage(row, job_id)
還有其他方法,但這正是您所要求的簡單答案:
with open(sys.argv[1]) as csvfile:
reader = csv.DictReader(csvfile)
for row_num, row in enumerate(reader):
if row_num > 1:
break
sendPackage(row, job_id)
一種更整潔的方法是使用itertools.islice
。
import csv
import sys
from itertools import islice
def sendPackage(row, job_id):
print('row {}: job {}'.format(row, job_id))
with open(sys.argv[1]) as csvfile:
reader = csv.DictReader(csvfile)
for row in islice(reader, 2):
sendPackage(row, 1) # dummy value for job_id
該代碼最多需要reader
包含2個元素。 如果少於2個元素,則在對其進行迭代后停止。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.