当前位置: 首页 > 知识库问答 >
问题:

将有序元组列表保存为CSV[重复]

杨飞
2023-03-14

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

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

有什么建议吗?谢谢

共有2个答案

通沛
2023-03-14

Python,转换列表并写入CSV文件

import csv   
lol = [(1,2,3),(4,5,6),(7,8,9)]
item_length = len(lol[0])

with open('test.csv', 'wb') as test_file:
  file_writer = csv.writer(test_file)
  for i in range(item_length):
    file_writer.writerow([x[i] for x in lol])

输出

1,4,7
2,5,8
3,6,9

请注意,在Python3中尝试它可能会出现TypeError中提到的错误:需要一个类似字节的对象,而不是python和CSV中的“str”。

考虑使用<代码>打开(‘UR文件.CSV’,‘W’)为OUT:<代码> Python 3。

齐乐
2023-03-14

您可以这样做:

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
 类似资料:
  • 我想将pandas数据帧保存为csv文件,问题是要将np.array转换为字符串。 我想将数组保存为数组,但在文档中找不到任何有用的内容。 解数独=[123345894324321321](整数列表) n_splits=3(整数) 最终结果应该是: [123 345 894 324 321 321] 1,[123 345 894 324 321 321] 3,[123 345 894 324 32

  • 问题内容: 我如何转换 至 问题答案: 使用简单的列表理解: 会给你:

  • 问题内容: 我已经编写了此函数,用于将元组列表转换为列表列表。有没有更优雅的/ Pythonic的方式来做到这一点? 问题答案: 您可以使用列表推导:

  • 我应该做的是通过stream.generate.创建一个随机数数组列表下面的代码是我试图将其保存到数组列表中的尝试,但它的类型是“对象”。我想我必须先将其映射到int,但我不知道怎么做。代码现在不起作用。

  • 问题内容: 我是Python的新手,需要将列表转换为字典。我知道我们可以将元组列表转换为字典。 这是输入列表: 并且我想将此列表转换为元组列表(或直接转换为字典),如下所示: 我们如何在Python中轻松做到这一点? 问题答案: 您想一次将三个项目分组吗? 您想一次分组N个项目吗?

  • 问题内容: 我需要将列表排序为: 我已经使用了该函数,并且能够根据值进行排序…但是我无法按字母顺序进行排序,因为我需要按照数字的降序和字母的升序对列表进行排序数字具有相同的值。 问题答案: 使用元组作为浮点数为负的排序键可以反转顺序: 如果您不能进行求反(例如对字符串或字母值或非数字值),则可以利用Python sort函数稳定的事实,并分两步进行排序: