Python:从txt文件中提取浮动

2024-05-23 13:45:20 发布

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

我有这个txt文件:

TP 0.8329 

我尝试使用以下代码提取“TP”之后的浮点:

def definir_operacao():
    end = 0
    oper = []
    for x in range(len(lines[0])):
        if(lines[0][x] == " "):
            end += 1
        elif(end == 1):
            oper.append(int(lines[0][x]))
    str2 = ''.join(oper)
    return str2


ci = definir_operacao()
print(ci)

但我得到一个空变量作为响应,所以我猜我做错了什么,有人能帮我吗


Tags: 文件代码intxtcifordefend
2条回答

只需做这一行即可:

ci = float(lines[0].split()[1])

现在:

print(ci)

将提供:

0.8329

您正在检查是否获得了一个" ",如果是,则将完全相同的" "附加到oper。请再次查看此部分:

if(lines[0][x] == " "):
        end += 1
elif(end == 1):
        oper.append(int(lines[0][x]))

这就是为什么你的回答是空的

只需根据" "分割行,并从分割结果中获取第二个值。别忘了把它扔到浮子上。那会给你你想要的

res = float(lines[0].split(" ")[1])
    

您也可以像前面提到的@U11 Forward那样使用split(),因为默认分隔符是空白

相关问题 更多 >