0

非常に乱雑なテキストファイルからコンマ区切りファイルを作成しようとしています。ここに投稿された、関連している可能性のあるいくつかの質問を見てきましたが、これまでのところ何も機能していません。

これがファイルの非常に小さな部分です:

1 1

E 1 1

2 2

1

2

E 2 2

3 3

   7        C1

E 3 3

4 4

   7        C1

E 4 4

5 5

3

E 5 5

6 6

E 6 6

7 7

E 7 7

8 8

3

E 8 8

9 9

E 9 9

10 10

E 10 10

どんな提案でも本当にありがたいです。よろしくお願いします。

4

1 に答える 1

0

ラインレベルと「チャンク」レベルの両方で同時に作業しようとしているという問題ですか?

str.split() は、デフォルトですでにスペースとタブを処理しています:

lines = open('infile.txt').readlines()
# split each line based on tabs and spaces
lines = [ x.split() for x in lines ]
# remove empty fields (assuming you want to)
lines = [ x for x in lines if len(x) > 0 ]
# transform your lists (lines) into coma separated strings
lines = [ ','.join(x) for x in lines ]
# separate lines with \n for writelines
lines = [ x + '\n' for x in lines ]
open('outfile.txt', 'w').writelines(lines)

もちろん、これらのリスト内包表記のいくつかを組み合わせることができますが、わかりやすくするために別々にしています。

于 2012-07-04T18:36:39.133 に答える