簡體   English   中英

Python 3.4將列表寫入CSV

[英]Python 3.4 writing a list to a csv

我在將列表寫到csv時遇到麻煩。 我當前的代碼將列表(由字符串組成)寫入文件,每個字符之間有空格。 這是我正在使用的,問題很可能在最后3或4行中出現:

import csv
import sys
import collections

c1 = set()
c2 = set()
c3 = set()

new=(r'file')
old=(r'file2')

with open(new, 'r') as newfile:
    newreader = csv.reader(newfile, delimiter=(','))
    for row in newreader:
        c1.add(row[0])

with open(old, 'r') as oldfile:
    oldreader = csv.reader(oldfile, delimiter=(','))
    for row in oldreader:
        c2.add(row[0])

c3=c2-c1
c1=c2|c3
print(c1)
print(c2)
print(c3)

with open (r'csv1.csv', 'w', newline='') as write_file:
    write=csv.writer(write_file, delimiter=' ')

    write.writerows(list(c1))

在此先感謝您的幫助。

writer.writerows() (復數,帶s ),采用序列序列 每個嵌套序列都是一行帶有列的行。

另一方面,您的集合不是這樣的嵌套結構。 用生成器表達式產生一個:

with open (r'csv1.csv', 'w', newline='') as write_file:
    write=csv.writer(write_file)
    write.writerows([r] for r in c1)

這將產生列表,每一行只有一列。 由於只有一列,因此將分隔符設置為什么都無所謂。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM