2

我正在制作一个双变量 if 语句,但它一直返回错误。我不知道出了什么问题:

variable = float(0)

for index in range(10):

    variable = variable + float(2)

    if x <= float(variable/3) and > float(variable-2.0/3):
        # do something

    else:
        pass

或类似的东西。这是基本结构。为什么每当我尝试运行它时,它总是以红色突出显示 >?

4

4 回答 4

6

Python 也支持正则不等式,所以你可以这样写:

if variable - 2.0 / 3 < x <= variable / 3:
    # ...
于 2012-10-22T00:17:30.163 回答
2

你想做类似的事情

if ((x <= float(variable/3)) and (x > float(variable-2.0/3))):
       # do something

 else:
       pass

换句话说, and 的每一边都必须是一个独立的布尔表达式。我不确定你是否需要所有的括号。

于 2012-10-22T00:15:05.887 回答
1

在 if 块中的第二个条件之前,您似乎缺少一个变量或常量。这可能是您遇到错误的原因之一。

于 2012-10-22T00:15:30.790 回答
0

此代码工作正常:

index=0

x=0
variable = float(0)
for index in range(10):
variable=variable + float(2)

if x <= float(variable/3) and x> float(variable-2.0/3):
    print 'Doesn\'t Matter'
else:
    print 'pass'
于 2012-10-22T00:18:11.880 回答