Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python如何评估这一点?_Python_Evaluation - Fatal编程技术网

python如何评估这一点?

python如何评估这一点?,python,evaluation,Python,Evaluation,有人能解释一下这些结果是如何可能的(python 2.6): >12 真的 >>> (12 假的 >>> 12) 假的 我认为最后两个中的一个会与第一个匹配,但显然第一个语句中的运算符有某种联系 在第一种情况下,121实际上小于3,3大于2,因此True 在第二种情况下,最后两条语句将布尔值与整数进行比较: >>> True > 2 False >>> 1 < True False >True>2 假的 >>>1

有人能解释一下这些结果是如何可能的(python 2.6):

>12
真的
>>> (12
假的
>>> 12)
假的
我认为最后两个中的一个会与第一个匹配,但显然第一个语句中的运算符有某种联系

在第一种情况下,
12
1
实际上小于
3
3
大于
2
,因此
True


在第二种情况下,最后两条语句将布尔值与整数进行比较:

>>> True > 2
False
>>> 1 < True
False
>True>2
假的
>>>1<正确
假的
第一条语句是,它适用于Python中的所有布尔比较

比较产生布尔值:True或False

通过将表达式的一部分放在括号中,这些部分将首先求值,最后比较整数和布尔值。

第一个示例显示。
12
表示
12
(每个表达式只求值一次除外)。这适用于Python中的所有比较运算符

后两个示例强制首先计算一个比较,得到一个布尔值,然后与剩余整数进行比较。

根据

与C不同,Python中的所有比较操作具有相同的优先级,比任何算术、移位或按位操作的优先级都低。同样与C不同的是,像a 比较::=或_expr(comp_运算符或_expr)*


comp_操作符::=“|”==“|”>=“|”你至少能把你大量复制的python文档文本放在一个引号里吗?这不是我的意思,是施洪志为你做的。值得注意的是,如果比较的值是表达式,它们只计算一次,所以
1
1
。一个更接近的等价物应该是
x=f();1
。为什么要投反对票?我真的不知道要搜索什么。
>>> True > 2
False
>>> 1 < True
False