2

double 変数の 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 ブロックの 2 番目の条件の前に、変数または定数が欠落しているようです。これが、エラーが発生する 1 つの理由である可能性があります。

于 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 に答える