同一运算符
用于比较两个对象的存储单元,实际比较的是对象地址
is与==的区别:
前者比较地址,后者比较数值,即__eq__()方法
整数缓存问题
Python仅仅对[-5,256]的整数缓存起来,此时数值相同的变量地址相同,而需要注意的是,这仅仅在命令行中执行,而在pycharm或是保存为文件执行时,上述情况不会出现,因为解释器做了一部分优化(范围是[-5,任意整数])
变量和None比较时,用is
同一运算符
用于比较两个对象的存储单元,实际比较的是对象地址
is与==的区别:
前者比较地址,后者比较数值,即__eq__()方法
整数缓存问题
Python仅仅对[-5,256]的整数缓存起来,此时数值相同的变量地址相同,而需要注意的是,这仅仅在命令行中执行,而在pycharm或是保存为文件执行时,上述情况不会出现,因为解释器做了一部分优化(范围是[-5,任意整数])
变量和None比较时,用is