3.0是浮点数,不是整数。x, y = 30000, 30000这种赋值方式会把同一个30000的内存地址索引赋值给x和y如果你单独使用 x = 30000 然后换行 y = 30000,就会看到两个地址不一样。
[-5,256] 缓存的是其中的整数值,就是正常的int 而3.0是浮动数,不在缓存的列表里面,30000这里是true是 a = b = 30000 这种赋值方式导致的