web-dev-qa-db-ja.com

pythonでcsvの区切り文字を使用する方法

Pythonでcsv.writerの区切り文字を使用する方法を理解するのに問題があります。コンマで区切られた文字列が1つのセルにあるcsvファイルがあり、個々のセルに各Wordが必要です。例:

   100 , 2559   ,,Main, St,LEOMA,LEOMA,498,498, AK,AK
   140 , 425    ,,Main, St,LEOMA,LEOMA,498,498, AK,AK
   100 , 599    ,,Main, St,LEOMA,LEOMA,498,498, AK,AK

あるべき

   100  2559        Main    St  LEOMA   LEOMA   498 498 AK  AK
   140  425     Main    St  LEOMA   LEOMA   498 498 AK  AK
   100  599     Main    St  LEOMA   LEOMA   498 498 AK  AK

(個々のセルの各単語)。

私は試した:

import csv
workingdir = "C:\Mer\Ven\sample"
csvfile = workingdir+"\test3.csv"
f=open(csvfile,'wb')

csv.writer(f, delimiter =' ',quotechar =',',quoting=csv.QUOTE_MINIMAL)
20
hydi

あなたのコードはあなたのファイルを消去しています:

import csv
workingdir = "C:\Mer\Ven\sample"
csvfile = workingdir+"\test3.csv"
f=open(csvfile,'wb') # opens file for writing (erases contents)
csv.writer(f, delimiter =' ',quotechar =',',quoting=csv.QUOTE_MINIMAL)

ファイルを読み取りたい場合は、csv.readerを使用して読み取り用にファイルを開く必要があります。

import csv
workingdir = "C:\Mer\Ven\sample"
csvfile = workingdir+"\test3.csv"
f=open(csvfile,'rb') # opens file for reading
reader = csv.reader(f)
for line in reader:
    print line

異なる区切り文字で新しいファイルに書き戻したい場合は、新しいファイルを作成し、それらの区切り文字を指定して、タプルを印刷する代わりに各行を書き出すことができます。

20
underrun

わかりました、あなたの質問から私が理解したものはここにあります。 pythonからcsvファイルを作成していますが、そのファイルをExcelやOpen Officeなどの他のアプリケーションで開くと、個々のセルの各Wordではなく1つのセルに完全な行が表示されます。私は正しいですよ??

もしそうなら、これを試してください、

import csv

with open(r"C:\\test.csv", "wb") as csv_file:
    writer = csv.writer(csv_file, delimiter =",",quoting=csv.QUOTE_MINIMAL)
    writer.writerow(["a","b"])

delimiter = ","を設定する必要があります

3
abhishekgarg