老师 ,这种是偶然情况吗
来源:5-12 如何判断变量的值、身份与类型

qq_四月是你的谎言喽_03448132
2018-02-09
写回答
2回答
-
7七月
2018-02-09
理论上来说,python都是对象,创建任意的int、string、tuple都会创建一个新的对象,id是不相同的。但是出于内存和效率的考虑:从-5到256 这些小整数会实现一个小整数池,这个范围内的整数都会实现内存复用。超过这个范围的整数不会。而float类型、tuple则不会,每次都会生成一个新的内存地址。string比较特殊,python有一种机制叫做intern,这个机制保证相同的字符串也只创建一次。至于这个set,我试了好几次也都是不同的地址。
10 -
慕仙7708394
2018-02-09
因为上一个{1,2,3}参与了下一步的运算,所以被赋予了新的id,因为没看见你所有的代码 所以可能也不是很容易说明白
你看这里的当定义了a和b之后,因为二者都参与了一个运算 所以id位置被重新定义了
00
相似问题