gpt4 book ai didi

Python如何将混合列表写入csv文件?

转载 作者:太空宇宙 更新时间:2023-11-03 18:39:23 25 4
gpt4 key购买 nike

我有一个包含字典的列表,例如:数据 = ['a','b','c',{1:'d',2:'e'}]。我想要的 csv 文件是 ['a','b','c','d','e']

我可以通过首先将字典项转换为列表,将其替换为列表,然后将修改后的数据写入 csv 文件来实现此目的。但我需要的是一种可以将 data 写入 csv 文件而不将其更改为 data = ['a','b','c','d','e ']

谢谢。

最佳答案

鉴于您的列表中有不同的类型,并且您希望以不同的方式处理每种类型,您应该尝试使用 isinstance(x, type) 请参阅 the documentation .

data = ['a', 'b', 'c', {1:'d', 2:'e'}]

def flattener(alist):
flatten = []
for i in alist:
if isinstance(i, dict):
for j in sorted(i): # Sort by keys.
yield i[j]
elif isinstance(i,str):
yield i

flatten = [i for i in flattener(data)]

[输出]:

['a', 'b', 'c', 'd', 'e']

要将列表放入 csv 文件中,只需:

flatten = ['a', 'b', 'c', 'd', 'e']
with open('out.csv', 'w') as fout:
fout.write(','.join(flatten))

关于Python如何将混合列表写入csv文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20878683/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com