我正在尝试从命令行读取一个csv文件,并对列进行一些计算。但是,当文件被读入时,我正在努力跳过第一行(标题行)。
这是我当前正在使用的代码:
#!/usr/bin/env python
import sys
import re
import csv
def main(argv):
for row in csv.reader(iter(sys.stdin.readline, "")):
quantity = int(row[3])
price_per_unit = int(row[5])
cum_sum = quantity*price_per_unit
print(row[0]+" "+str(cum_sum)+" "+row[6]+"\t"+"1")
#Note there are two underscores around name and main
if __name__ == "__main__":
main(sys.argv)
从命令行运行此命令
python problem1.py < orders.csv
答案 0 :(得分:2)
在开始循环之前,您需要执行一次迭代。这很常见。
my_iterator = iter(sys.stdin.readline, "")
my_iterator.next() # Gets the first line and does nothing with it.
for row in csv.reader(my_iterator):
quantity = int(row[3])