在第一列前面写.text

时间:2013-07-26 12:59:13

标签: python python-2.7

我有一个像这样的文本文件

E13,E16,ES,2738
E12,E13,EM,394
E5,E5,E6,354

我想删除前两列,并希望用第3列写.txt,我为它编写了以下代码

import csv
with open("num2_try.txt","rb") as source:
    rdr= csv.reader( source )
    with open("result.txt","wb") as result:
        wtr= csv.writer( result )
        for r in rdr:
            wtr.writerow( (r[2],r[3]) )

它给我这样的输出

ES,2738
EM,394
E6,354

但我想要这样的东西

ES.txt 2738
EM.txt 394
E6.txt 354

1 个答案:

答案 0 :(得分:1)

只需将.txt添加到您的r[2]字符串中:

wtr.writerow((r[2] + '.txt', r[3]))

如果您想使用空格作为分隔符而不是逗号,请将csv.writer()配置为使用不同的分隔符:

wtr = csv.writer(result, delimiter=' ')