csv.writer要求我输入一个真正的csv文件。有没有办法我可以提供一个字符串或列表来写入而不是实际的文件?我想在不编写文件的情况下将csv返回给另一个函数。
hold = [some_list]
blank = []
w = csv.writer(blank, delimiter=',')
w.writerows(hold)
return w
Traceback (most recent call last):
w = csv.writer(blank, delimiter=',')
TypeError: argument 1 must have a "write" method
答案 0 :(得分:4)
StringIO对象适用于此:
>>> f = StringIO()
>>> w = csv.writer(f)
>>> w.writerow(['hello', 'world'])
13
>>> f.getvalue()
'hello,world\r\n'