2017-06-20 9 views
0

私はコーディングが新しく、テキストファイルをCSVファイルに変換しようとしています。これまでのところ私のコードは、このPythonで文字列からカンマ区切りの値を作成する方法は?

['CP003057.2\tPlus\t2.713014377\t1884078\t1884060\t\t\t\t\n'], 

['CP003057.2\tPlus\t2.752912689\t1084194\t1084176\t\t\t\t\n'], 

['CP003057.2\tPlus\t2.756875754\t2915112\t2915094\t\t\t\t\n'], 

['CP003057.2\tPlus\t2.758370469\t547344\t547326\t\t\t\t\n'], 

は、私は「\ tを」交換する必要が生じ「」私は、カンマで区切られた各リスト内の複数の文字列を持つように。ここでは、と「\ T」を置換したい場合は、私がこれまで

text = 'file.txt' 

data = [] 

with open(text) as f: 

     for line in f: 
      data.append([word for word in line.split(" ") if word]) 

print(data) 
+0

私はパイソン男はいないけど、あなたの圧痕は見えているようだ。 –

+0

インデントは「オフ」ですが、うまく動作します。これは問題ではない – inspectorG4dget

+0

'line.split(" ")'を 'line.split()'に置き換えてみてください。これはデフォルトで空白を分割します。 – Ben

答えて

0

を持っているコードは、あなただけのカンマで\ tの各インスタンスを置き換え

line.replace('\t', ',') 

を行うことができます「」であります作成された各行について

0

あなたが読んだり書いたりするのをもっとコントロールできるので、あなたが見たいかもしれないファイルがあります。単純な修正は分割引数としてデリミタを使うことです。あなたは、カンマを使用している,列を分割するために、そしてあなたが使用したい:

line.split(', ') 

あなたは垂直線|を使用している場合は、あなたが使用したい:

line.split('| ') 
関連する問題