我有一个数字列表,我想将它们放在 .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:
writer = csv.writer(f)
for val in daily_returns:
writer.writerow([val])
使用 Python2.6+,以模式打开文件wb
:
with open('returns.csv', 'wb') as f:
writer = csv.writer(f)
for val in daily_returns:
writer.writerow([val])
替代解决方案:假设 daily_returns 是您希望作为 CSV 文件中的列写入的列表的名称,则以下代码应该可以工作:
with open('return.csv','w') as f:
writer = csv.writer(f)
writer.writerows(zip(daily_returns))
仅作记录:
我正在使用 Python 3.2,我只能让以下工作
with open('returns','w')as f:
writer=csv.writer(f,lineterminator='\n')
for val in returns:
writer.writerow([val])
对于编写单列,我建议避免使用csv
命令,而只使用带有str.join() 方法的普通 python :
with open('returns.csv', 'wb') as f:
f.write("\n".join(daily_returns))