将Python列表写入单个CSV列
我有一个数字列表,我想把它放在.csv文件的一列中。下面的代码跨一行写入值。如何更改代码,使Python将每个值都写在单独的行上?谢谢将Python列表写入单个CSV列,python,csv,writer,Python,Csv,Writer,我有一个数字列表,我想把它放在.csv文件的一列中。下面的代码跨一行写入值。如何更改代码,使Python将每个值都写在单独的行上?谢谢 with open('returns.csv', 'wb') as f: writer = csv.writer(f) writer.writerow(daily_returns) 使用Python3,以w模式打开文件: with open('returns.csv', 'w') as f:
with open('returns.csv', 'wb') as f:
writer = csv.writer(f)
writer.writerow(daily_returns)
使用Python3,以
w
模式打开文件:
with open('returns.csv', 'w') as f:
writer = csv.writer(f)
for val in daily_returns:
writer.writerow([val])
with open('returns.csv', 'wb') as f:
writer = csv.writer(f)
for val in daily_returns:
writer.writerow([val])
使用Python2.6+,以wb
模式打开文件:
with open('returns.csv', 'w') as f:
writer = csv.writer(f)
for val in daily_returns:
writer.writerow([val])
with open('returns.csv', 'wb') as f:
writer = csv.writer(f)
for val in daily_returns:
writer.writerow([val])
请记录在案:
我使用的是Python3.2,我只能做到以下几点
with open('returns','w')as f:
writer=csv.writer(f,lineterminator='\n')
for val in returns:
writer.writerow([val])
替代解决方案:假设daily_returns是您希望在CSV文件中作为列写入的列表的名称,则以下代码应该可以工作: 以open('return.csv','w')作为f的
:
writer=csv.writer(f)
writer.writerows(zip(每日报表))
对于编写单个列,我建议避免使用csv
命令,只使用普通python和以下命令:
我认为open call应该只有
open('returns.csv','w')作为f:
谢谢。我尝试了相同的代码,但我的最后一行是writer.writerow(val),我得到了错误“Sequence Expected.”我没有意识到我需要括号。@Casey:我倾向于同意,但既然OP写了,我想他知道他在做什么。@unutbu,Casey:看。。。OP显然已经读取了文档:)ISTM只有列的CSV文件不需要CSV.writer。只需使用f.writelines([ret+'\n'表示每日返回中的ret])
@RaymondHettinger:这可能有些牵强,但是ret
值可能包含'\n'
字符或需要引用的分隔符。在Python 3中,您应该使用换行='
参数打开文件,正如中所解释的。这是在Python 3.x中对我有效的唯一解决方案。工作非常完美!我用“w”代替“wb”。谢谢