如何从文本文件中提取特定值?

时间:2019-10-05 18:21:44

标签: python python-3.x

我在不同行上有一个keys : values的文本文件,如下所示:

2 : 1507735181462872587547461110959
2 : 11504523
2 : 17122192286591811445449345578723033763535242012314847278
5 : 129555572211450066082129946922739441

我想从选择的一行中将键和值提取到不同的变量中,可能是第一行还是第三行。

如果选择的行是第二行,则会创建以下变量:

a = 2
b = 11504523

但是,我不知道如何从仅选择的一行中提取数据。

2 个答案:

答案 0 :(得分:0)

with open('yourfile.txt') as f:
    lines = f.readlines()

a, b = lines[chosen_index].split(':')

这将在stra中创建b对象。如果您需要将它们用作int,则可以在此之后进行转换。所有这些都假设yourfile.txt是您正在读取的文件,格式恰好是您所说的格式,并且chosen_index是您想要的行号(第一行编号为{{1} })

答案 1 :(得分:0)

假设您希望变量为整数,则只需解析文件并在:处拆分即可获得所需的值

choice = 2

with open('temp.txt') as f:
    lines = f.readlines()
chosen_line = lines[choice]
values = chosen_line.split(':')
a = int(values[0].strip())
b = int(values[1].strip())

print(a, b)