あなたは、読んで並べ替え、その後、あなたのファイルを書き込むcsv moduleを使用することができます。ファイルfoo.csv考える
for row in csv.DictReader(open("foo.csv")):
print row["b"], row["a"]
2 1
22 21
。
サンプルファイル:THIに取り組む
$ cat file.csv
A,B,C,D,E
a1,b1,c1,d1,e1
a2,b2,c2,d2,e2
コード
import csv
with open('file.csv', 'r') as infile, open('reordered.csv', 'a') as outfile:
# output dict needs a list for new column ordering
fieldnames = ['A', 'C', 'D', 'E', 'B']
writer = csv.DictWriter(outfile, fieldnames=fieldnames)
# reorder the header first
writer.writeheader()
for row in csv.DictReader(infile):
# writes the reordered rows to the new file
writer.writerow(row)
出力
$ cat reordered.csv
A,C,D,E,B
a1,c1,d1,e1,b1
a2,c2,d2,e2,b2
はいです。正規表現のパターンを使用して、離れて行く。 – ergonaut