我正在尝试使用Python列表中的值创建.csv文件.当我打印列表中的值时,它们都是unicode(?),即它们看起来像这样
[u'value 1', u'value 2', ...]
Run Code Online (Sandbox Code Playgroud)
如果我遍历列表中的值,即for v in mylist: print v它们看起来是纯文本.
我可以,在每个之间放一个print ','.join(mylist)
我可以输出到文件,即
myfile = open(...)
print >>myfile, ','.join(mylist)
Run Code Online (Sandbox Code Playgroud)
但是我想输出到CSV并且在列表中的值周围有分隔符,例如
"value 1", "value 2", ...
Run Code Online (Sandbox Code Playgroud)
我找不到一种简单的方法来在格式中包含分隔符,例如我已经尝试了join语句.我怎样才能做到这一点?
我有一长串以下表格清单---
a = [[1.2,'abc',3],[1.2,'werew',4],........,[1.4,'qew',2]]
Run Code Online (Sandbox Code Playgroud)
即列表中的值是不同的类型 - 浮点数,整数,字符串.如何将其写入csv文件,以便我的输出csv文件看起来像
1.2,abc,3
1.2,werew,4
.
.
.
1.4,qew,2
Run Code Online (Sandbox Code Playgroud) 我在脚本中有一行代码,它将文本文件中的数据与值之间的大量空格导入到数组中以供以后使用.
textfile = open('file.txt')
data = []
for line in textfile:
row_data = line.strip("\n").split()
for i, item in enumerate(row_data):
try:
row_data[i] = float(item)
except ValueError:
pass
data.append(row_data)
Run Code Online (Sandbox Code Playgroud)
我需要将其从文本文件更改为csv文件.我不想只是将此文本更改为逗号分隔(因为如果引号中有些值可以有逗号).幸运的是,我看到有一个我可以导入的csv库可以处理这个问题.
import csv
with open('file.csv', 'rb') as csvfile:
???
Run Code Online (Sandbox Code Playgroud)
如何将csv文件加载到数据数组中?
如果它有所不同,这就是数据的使用方式:
row = 0
for row_data in (data):
worksheet.write_row(row, 0, row_data)
row += 1
Run Code Online (Sandbox Code Playgroud)