簡體   English   中英

Python,分隔符 csv ';'

[英]Python, delimiter for csv ';'

更改.csv 文件中的兩列是一項簡單的任務。 我使用這段代碼:

inn = open('tk.csv', 'w')

import csv

with open('input_2.csv') as File:
     reader = csv.reader(File, delimiter=';')


    for row in reader:
        a = row[0]
        b = row[1]
        a, b = b, a
        print(a,b, file=inn)

它給了我在同一列中的鬃毛和值,用空格分隔。 我知道,回答中應該有分隔符“;” 如在 input.csv 中將名稱和值分隔在 2 個不同的列上。 我應該怎么辦?

print("%s,%s"%(a, b), file=inn)
# delimiter is comma above you can change it to whatever you want.

如果你願意; 作為 output 中的分隔符,您應該寫一個。 您使用的分隔符僅與輸入相關。

你可以

  • 要么使用print("%s;%s" % (a, b), file=inn)輸出分隔符,
  • 或者您可以指示print()生成正確的分隔符( print(a, b, sep=';', file=inn) ),
  • 或者您可以使用csv.writer() ,這是推薦的方式。

您應該使用 csv.writer 像這樣寫入 csv :

import csv

with open('tk.csv', 'w') as output_file:
    writer = csv.writer(output_file, delimiter=';')
    with open('input_2.csv') as input_file:
        reader = csv.reader(input_file, delimiter=';')
        for row in reader:
            a = row[0]
            b = row[1]
            a, b = b, a
            writer.writerow([a, b])

暫無
暫無

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

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