将Python列表导出到csv

Per*_*due 4 python csv

所以我试图创建一个真值表,我可以导出为csv或excel格式.我是Python的新手,所以如果我的代码太可怕,请耐心等待.

经过一些研究后,我开始将其作为真值表的代码:

import itertools 
table = list(itertools.product([False, True], repeat=6)) 
print(table)
Run Code Online (Sandbox Code Playgroud)

然后我得到了这段代码:

import csv
import sys
with open('C:\\blahblah5.csv','w') as fout:
writer = csv.writer(fout, delimiter = ',')
writer.writerows(table)
Run Code Online (Sandbox Code Playgroud)

这让我几乎到了csv格式的真值表需要的地方.但是,当我在excel中打开文件时,我的记录之间插入了空白行.我尝试了一个在网上找到的提示,我需要将输入类型从w更改为wb,但是当我这样做时出现此错误:

Traceback (most recent call last):
File "<pyshell#238>", line 3, in <module>
writer3.writerows(table)
TypeError: 'str' does not support the buffer interface
Run Code Online (Sandbox Code Playgroud)

我不知道从哪里开始,因为我觉得我如此接近于将其变成我想要的格式.

DSM*_*DSM 7

我怀疑你正在使用Python 3.你打开文件写csvs的方式改变了一点:如果你写

with open("C:\\blahblah5.csv", "w", newline="") as fout:
Run Code Online (Sandbox Code Playgroud)

它应该工作,生成一个看起来像的文件

False,False,False,False,False,False
False,False,False,False,False,True
False,False,False,False,True,False
[etc.]
Run Code Online (Sandbox Code Playgroud)

  • 也许添加一个链接到[关于它的文档说明](http://docs.python.org/3.3/library/csv.html#id3). (3认同)