[英]Python write list items to csv
我有这段代码,它想将我的列表项导出到一个csv文件中,其中文件中的每一行都包含列表中的一项。
writer = csv.writer(open(path+"output.csv", 'wb'))
for item in result:
writer.writerow(item)
我得到的结果非常奇怪(例如列表中的前两个项目:“到期”和“代码”):
p,a,s,t, ,d,u,e
c,o,d,e
我想要得到的结果很简单:
past due
code
有任何想法吗 ?
这里已经有解决方案: 用Python将字符串列表写入Excel CSV文件
您无需遍历列表中的每个元素。 尝试这个:
writer = csv.writer(open(path+"output.csv", 'wb'))
writer.writerow(result)
writerow
方法接受单个参数,并以逗号分隔形式表示组成其参数的元素。
通常使用的参数是列表,元组等。显然您使用了字符串,因此写入的是字符串元素的顺序
如果要迭代的所有元素都是字符串,则可以解决问题
for item in result:
writer.writerow([item])
但是编写仅包含一列的csv文件是不寻常的,并且可能您可能想编写一个简单的文本文件...如果result
中的所有元素都是字符串,那么以下代码
with of as open('result.txt')
of.write("\n".join(result))
会做的工作。
我认为问题出在这里:
for item in result:
writer.writerow(item)
result
变量实际上是一个字符串,这就是为什么要在每个字符后添加逗号的原因。 result
不是您的代码所建议的字符串数组-实际上是一个字符串(字符数组)。
with open('returns.csv', 'wb') as f:
writer = csv.writer(f)
for val in daily_returns:
writer.writerow([val])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.