昨天我在Python 2和Python 3之间遇到了这个奇怪的解包差异,并且在快速谷歌搜索之后似乎没有找到任何解释.
Python 2.7.8
a = 257
b = 257
a is b # False
a, b = 257, 257
a is b # False
Run Code Online (Sandbox Code Playgroud)
Python 3.4.2
a = 257
b = 257
a is b # False
a, b = 257, 257
a is b # True
Run Code Online (Sandbox Code Playgroud)
我知道它可能不会影响程序的正确性,但它确实让我有点烦恼.任何人都可以在拆包时给出一些关于这种差异的见解吗?