如果从文本文件读取值后条件未在 python 中执行

if condition does not executed in python after reading values from text file

我不明白为什么我的 if 条件没有在 python 中执行。` 我的文本文件中的值为

 0.000      0 
 0.001      1 
 0.002      2 
f = open(sys.argv[1],"r").readlines()
var=0

for line in f:

    new = f[var].split()

    Time = new[0]
    rev=float(new[1])

    var=var+1

    if 0.001 > Time :

            print " I am here "

我猜你应该重写你的代码:

filename = sys.argv[1]
with open(filename) as f:
    for line in f:
        time, rev = map(float, line.split())
        if time < 0.001:
            print("I'm here")

您试图将字符串(Time 变量)与浮点数(0.001)进行比较 - 这是错误的。在 python 2 中没问题,但总是 False。我建议你开始使用 python 3 - 你不能用这个版本比较浮点数和字符串:)