说明:我需要从file1获取参数并需要在某个函数中使用然后我需要从该函数获取结果然后需要将这些test_name和结果写入新的csv,即file2。虽然我在下面的例子中做了一些错误。
从CSV文件1中读取并使用python
写入新的CSV文件2with open(inputs.csv, 'rb') as file1: #Need to read params from this file
data = list(csv.reader(file1))
with open('output.csv', 'wb') as file2: #Need to write results to this file
writer = csv.writer(file2)
for row in data:
api = row[0]
test_name =row[1]
out = funtion_call(api, test_name)
writer.writerow([test_name, out])
file1.close()
file2.close()
输出:
writer.writerow([test_name, out])
ValueError: I/O operation on closed file
答案 0 :(得分:1)
如果您使用with
声明,则您的操作需要在该块内,with
会处理您的开启和关闭。
with open(inputs.csv, 'rb') as file1:
data = list(csv.reader(file1))
with open('output.csv', 'wb') as file2:
writer = csv.writer(file2)
for row in data:
api = row[0]
test_name =row[1]
out = funtion_call(api, test_name)
writer.writerow([test_name, out])
如果没有你的所有代码,就不可能对此进行测试,但希望你能得到这个想法。此链接也可能有所帮助:http://effbot.org/zone/python-with-statement.htm