Python - 将列添加到现有制表符分隔文件中

时间:2010-06-17 09:25:19

标签: python file append

我希望在文件中添加一列数据。

该文件目前有三个制表符分隔的列。

abbd    1234    0.987
affr    2345    0.465

我有一份包含花车的长度为8,800的清单。

li = [-1.0099876, 34.87659]

我希望将此列表添加为文件的第四列。

abbd    1234    0.987    -1.0099876

注意 - 我的文件在r +模式下打开。

谢谢, S: - )

2 个答案:

答案 0 :(得分:3)

import fileinput

for fl, line in zip(li, fileinput.input(['a.txt'], inplace=True)):
    print(line.strip() + '\t' + str(fl))

答案 1 :(得分:1)

我和MattH在一起,就地操作通常是个坏主意。替代方法可以是:

import itertools

def add_column(lines, values, column_delimiter="\t"):
    for line, value in itertools.izip(lines, values):
        yield line.rstrip() + column_delimiter + str(value)

li = [-1.0099876, 34.87659]  
for line in add_column(open("a.txt"), li):
    print line