Python 将有序元组列表另存为CSV

Python 将有序元组列表另存为CSV,python,csv,tuples,Python,Csv,Tuples,我有一个按值排序的元组列表。它们的格式为(名称、计数),其中 count是每个唯一名称的出现次数 我想把这个列表转换成CSV,其中每个名称都是列标题 每个值都是单行的列值 有什么建议吗?谢谢。 输出 1,4,7 2,5,8 3,6,9 请注意,在Python3中尝试可能会出现如中所述的错误 考虑将与open('ur file.csv','w')一起作为out:用于python 3。您可以这样做: import csv # note: If you use 'b' for the mode,

我有一个按值排序的元组列表。它们的格式为
(名称、计数)
,其中 count是每个唯一名称的出现次数

我想把这个列表转换成CSV,其中每个名称都是列标题 每个值都是单行的列值

有什么建议吗?谢谢。

输出

1,4,7
2,5,8
3,6,9
请注意,在Python3中尝试可能会出现如中所述的错误

考虑将
与open('ur file.csv','w')一起作为out:
用于python 3。

您可以这样做:

import csv

# note: If you use 'b' for the mode, you will get a TypeError
# under Python3. You can just use 'w' for Python 3

data=[('smith, bob',2),('carol',3),('ted',4),('alice',5)]

with open('ur file.csv','wb') as out:
    csv_out=csv.writer(out)
    csv_out.writerow(['name','num'])
    for row in data:
        csv_out.writerow(row)

    # You can also do csv_out.writerows(data) instead of the for loop
输出文件将具有:

name,num
"smith, bob",2
carol,3
ted,4
alice,5

请编辑您的帖子以包含您尝试的解决方案。人们会给你指出正确的方向。提示:浏览一下standard-library中的
csv
模块。只需在for循环中编写一个字符串
output+=myTuple[0]+','+myTuple[1]+'\n'
。循环完成后,将
输出写入
*.csv
文件。只需
导入csv
并读取模块文档,非常简单。writerow()非常不规则地只在一些字符串周围加引号。我的原始数据根本没有引号。这方面有什么问题吗?如果您在Windows上,请使用模式“wb”打开文件,以避免在输出中的每一行之间出现空行。在Python 3中,使用模式“w”而不是“wb”,以避免出现类型错误。您可以传递
newline=''
,它将处理多余的空行。我得到了这个错误,像字节一样的对象不是必需的str.@AbdulHaseeb:这是在二进制模式下打开文件
open('ur file.csv','wb')
在Python 3模式下的
b
。只需在打开模式下卸下
b
name,num
"smith, bob",2
carol,3
ted,4
alice,5