只读取文本文件的第一列和最后一列,最后一列用标记NAm写入最后一列

2024-04-18 02:28:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个列表.txt文件内容如下:

1535    2015-22-12  0010.dcm
1530    2015-22-12  0013.dcm
1531    2015-22-12  0014.dcm
..
..
..

现在我只想读一行,比如说第一行和第1列及第三列,例如:把1535和oo10.dcm读入两个不同的字符串变量。我将使用操作系统连接从这些变量创建路径。你知道吗

对文件做些操作。。。你知道吗

然后在读取了第一行的.dcm文件头之后,我想添加第四列和一个标记值。你知道吗

因此,txt文件的结尾应该如下所示:

1535    2015-22-12  0010.dcm    lab1
1530    2015-22-12  0013.dcm    lab2
1531    2015-22-12  0014.dcm    lab3
..
..
..

如何在python中执行此操作?你知道吗

有什么提示吗?你知道吗


Tags: 文件字符串标记路径txt内容列表结尾
2条回答
import operator
import csv
import os
import string


vals = operator.itemgetter(0,2)
lab = string.Template("lab${n}")

with open('path/to/input') as infile, open('path/to/output', 'w') as fout:
    outfile = csv.writer(fout, delimiter='\t')
    for labnum,row in enumerate(csv.reader(infile, delimiter='\t'), 1):
        num, fname = vals(row)
        fpath = os.path.join(num, fname)
        # do file operations with fpath
        row.append(lab.substitute(n=labnum))

        outfile.writerow(row)

这就是你想做的吗?你知道吗

import re

with open('list.txt', 'r') as data:
    for line in data:
        fields = re.split(r' +', line)
        ... do stuff with fields[0] and fields[2] ...
        print(line + ' ' + tag)

相关问题 更多 >