Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.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_Python 2.7_Python 3.x - Fatal编程技术网

Python无法比较两个值

Python无法比较两个值,python,python-2.7,python-3.x,Python,Python 2.7,Python 3.x,以下代码的答案是否定的 为什么python不能比较a和b,尽管这两个值都等于999999比较两个值是否相等的正确方法是: 当您使用is时,您是在比较对象标识,而不是相等。试试这个 a == b 您正在检查这两个变量是否与is相同。您很可能正在查找= a==b因为a不是b但是a==b是真的a是b正在检查对象a和b是否相同(或者a和b的内存位置相同),如果要检查是否有相同的值,请使用“==”而不是isI,我建议您打印id(a)和id(b).Python能够比较两个值,您只是没有告诉它这样做。那么为

以下代码的答案是否定的


为什么python不能比较a和b,尽管这两个值都等于999999

比较两个值是否相等的正确方法是:

当您使用
is
时,您是在比较对象标识,而不是相等。

试试这个

a == b

您正在检查这两个变量是否与is相同。您很可能正在查找
=


a==b

因为
a
不是
b
但是
a==b
是真的
a是b
正在检查对象a和b是否相同(或者a和b的内存位置相同),如果要检查是否有相同的值,请使用“==”而不是isI,我建议您打印
id(a)
id(b)
.Python能够比较两个值,您只是没有告诉它这样做。那么为什么
is
适用于较低的值呢?@HabibAnsari,因为小整数被合并,在这种情况下,身份检查成功。请参阅本文:那么为什么
is
适用于较低的值,例如4?
a == b
a=999999
b=999999
if a == b:
    print("yes")
else:
    print("no")