gpt4 book ai didi

Python csv写入列表

转载 作者:行者123 更新时间:2023-12-01 05:52:46 26 4
gpt4 key购买 nike

我有一个代码可以将一堆行写入 csv 文件。它写了我想要的内容,但是......它在每一列中插入括号......代码是:

    root_text_csv = "C:/Users/s/Desktop/text/knife"+numarul_folderelor+".csv"
fisier_text_knife = csv.writer(open(root_text_csv,'wb'))
row_test = []
for filenames in os.listdir(foldere_prrra):
knife = filenames.replace("<SP>", " ").replace(".sys", "")
test = ['cut '+knife+' off for fuged,', 'cut '+knife+' off,', 'cut '+knife+' fool alabala,', 'cut '+knife+' nieh,', 'prrra '+knife+' alabala,',
'cut '+knife+' fuged streaming,', 'cut '+knife+' alabala fuged,', 'cut '+knife+' off alabala,', 'prrra '+knife+' fool alabala,',
'cut '+knife+' off fuged,', 'prrra '+knife+' niether alabala,', 'cut off '+knife+' for fuged,' 'cut '+knife+' fuged fool alabala,',
'cut '+knife+' off niether,', 'where to cut '+knife+',', ''+knife+' fool alabala off,', 'steel '+knife+' off fuged,', 'cut '+knife+' fuged niether,',
''+knife+' fool alabala off,', 'fuged streaming '+knife+',', 'cut '+knife+' niether,', 'cut '+knife+' fuged,', 'red '+knife+' off,', ''+knife+' off,',
'red '+knife+',', 'cut '+knife+',', ''+knife+' fuged,', 'fuged '+knife+',', ''+knife+' off,', 'off '+knife+',', ''+knife+',']
random.shuffle(test)
scris = [x for x in test if len(x) <= 30]
row_test.append(scris) #row_test.append(scris[0])
fisier_text_knife.writerow(row_test)

如果我将 row_test.append(scris[0:7]) 替换为 row_test.append(scris[0]) ,它只会写入其中的一个字符串(但写时不带括号 -->[ ]<--)。

我想写 7 或 8 行。我在这段代码上浪费了我的大脑。

谢谢您的宝贵时间。

最佳答案

发生这种情况的原因是因为 scris 是一个列表。

而不是:

row_test.append(scris[0:7])

这样做:

row_test += scris[0:7]

这也有效(请参阅下面的评论):

row_test.extend(scris[0:7])

如果仍然没有意义,请打开控制台并输入下面的示例内容。每次更改时都会将其打印出来。

下面的示例应该向您展示为什么它有效:

l = [1,2,3]          #    l = [1,2,3]
l.extend([4,5]) #now l = [1,2,3,4,5]
l.append([6,7]) #now l = [1,2,3,4,5,[6,7]]
l.extend('hi there') #raises an exception

当您调用 some_list.append(some_item) 时,它会将 some_item 放入 some_list 中。因此,如果 some_item 也是一个列表,那么您将得到一个列表内部列表。

当您调用 some_list.extend(some_item) 时,它some_item 加入到 some_list 的末尾。因此,如果 some_item 不是列表,则会出错。

编辑我想我现在明白你想要什么了......

因此给出一个像 [['1','2','3'],['4','5','6'],['7','8',' 这样的列表9']] 您希望 csv 看起来像:123,456,789,对吗?

而不是:

fisier_text_knife.writerow(row_test)

试试这个:

csv_friendly = [''.join(l) for l in row_test]
fisier_text_knife.writerow(csv_friendly)

关于Python csv写入列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13589533/

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