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了 这大概就是解释器的问题,感觉深究只会浪费时间,写在这里只是为了不让自己以后再错。
有图为证
这个小地方弄了我一个小时,太恶心了,完全不想理会了