python:行中的条件值大于语句

use*_*689 1 python conditional text

Python初学者在这里。我有一个按列排序的文本文件:

 fields = line.split("\t")
Run Code Online (Sandbox Code Playgroud)

我想询问第 3 到 23 列中的任何值是否大于 95。所有列都包含单个浮点数,例如 94.522342 或 99.2321321。到目前为止我所拥有的似乎不起作用:

    if (int(fields(3:23)) >= 95):
Run Code Online (Sandbox Code Playgroud)

我认为问题出在 (3:23) 部分,当我试图要求检查每一列时。

非常感谢任何帮助,谢谢!

Sve*_*ach 5

您的代码有两个问题: 您正在将列表与数字进行比较,这不会给出有意义的结果。并且您正在使用int()解码浮点数 – 请float()改用:

if any(float(x) >= 95 for x in fields[3:23]):
Run Code Online (Sandbox Code Playgroud)

请注意,这将检查第四列(索引 3)直到第 23 列(索引 22)。根据需要调整切片。