目录

python2和python3-is用法的不同,有点坑

目录

python2和python3 is用法的不同,有点坑

先说python里面 ==是用来判断值相等,is是用来判断是否是同一个对象,而python中是有常量池的。也就是说 a=‘#’,b=‘#’这样赋值之后a和b是同一个对象,is和==的结果都是True才对。不管是python2还是python3都是有常量池的。

经过试验,在python3.6.1确实是这样,但是在python2.7.13中 a is b 是false,有趣的是python2.7.12中 a is b又变成true了 这大概就是解释器的问题,感觉深究只会浪费时间,写在这里只是为了不让自己以后再错。

有图为证

https://img-blog.csdn.net/20171203220848274

https://img-blog.csdn.net/20171203220951576

https://img-blog.csdn.net/20171203221030407

这个小地方弄了我一个小时,太恶心了,完全不想理会了