15

重複の可能性:
Python が true/false 値を期待どおりに処理できないのはなぜですか?

ばかげた質問のように思えますが、Python の次のステートメントが明示的に禁止されていないのはなぜですか?

>> True=False
>> True
False

Python インタープリターはどのようTrueに処理しますか?False

4

4 に答える 4

6

Truestrまたは他の組み込みの名前は、デフォルトでスコープに存在する名前です。他のそのような名前と同じように再バインドできます。

于 2012-11-15T16:12:54.850 に答える
2

Pythonには実際には予約語がほとんどありません。残りはすべて再定義の対象となります。注意するのはあなた次第です!

于 2012-11-15T16:12:55.350 に答える
2
>>> True = False
False

上記の割り当てでTrueは、 は、使用する他の変数と同様の単なる変数です。そのスコープは、現在のスコープに限定されます。したがって、以下の例のように任意の値を割り当てることができます。に引き続きアクセスできるため、比較2 < 3は引き続き を出力することに注意してください。Truebuiltin

>>> True = 3
>>> True
3
>>> 2 < 3
True
于 2012-11-15T16:17:16.447 に答える
1

タイピング

True = False

True という新しい変数を作成し、その値を False に割り当てます。

2 番目の質問に答えると、True と False は整数 1 と 0 (技術的に言えば、サブクラス) のカスタマイズされたバージョンであり、文字列表現が異なるだけです。

于 2012-11-15T16:28:57.483 に答える