True = Python 2.x中的错误赋值

时间:2012-11-15 16:10:12

标签: python boolean keyword python-2.x

  

可能重复:
  Why can’t Python handle true/false values as I expect?

似乎是一个愚蠢的问题,但为什么Python中的以下语句没有被明确禁止?

>> True=False
>> True
False

Python解释器如何处理TrueFalse

4 个答案:

答案 0 :(得分:6)

True,就像str或任何其他内置函数一样,只是默认情况下存在于作用域中的名称。您可以像任何其他名称一样重新绑定它。

答案 1 :(得分:2)

Python实际上只有很少reserved words。其余所有都需要重新定义。你应该小心谨慎!

答案 2 :(得分:2)

>>> True = False
False

在上面的作业中,True只是一个变量,就像你使用的任何其他变量一样。 其范围仅限于当前范围。因此,您可以为其分配任何值,如下例所示。请注意,比较2 < 3仍会打印True,因为您仍然可以访问builtin

>>> True = 3
>>> True
3
>>> 2 < 3
True

答案 3 :(得分:1)

输入

True = False

你创建一个名为True的新变量,你赋值为False。

回答你的第二个问题,True和False是整数1和0的定制版本(技术上讲,子类),只有不同的字符串表示。