使用Python解析选项卡或空格分隔文件

时间:2014-08-21 00:10:41

标签: python

我有一个文件,其中每个单词由单个空格或制表符或多个空格分隔:

e.g。

address1.txt:

Bob lives in Boston
Sam lives    in Houston
Jay       lives in Ruston
Bill        lives in           Atlanta

我想将文件另存为address2.txt,其中每个单词都是以制表符分隔的。

我如何使用Python做到这一点?

任何帮助?

由于 力

3 个答案:

答案 0 :(得分:4)

使用split分隔空格,然后join将字词与标签放回去。

with open('address1.txt') as fin, open('address2.txt','w') as fout:
  for line in fin:
    fout.write( "\t".join(line.split()) + "\n" )

答案 1 :(得分:1)

在文件的每一行上执行'\t'.join(line.split())。这是有效的,因为没有参数的split()会破坏任何空格序列的行。

答案 2 :(得分:0)

另一种方式:

#!/usr/bin/python

with open('address1.txt', 'r') as ro, \
    open('address2.txt', 'a') as rw:
      for line in ro.readlines():
          ls = line.strip().split()
          rw.write('\t'.join(ls) + '\n')