理论题
每个 Python shell 都有无需声明或创建即可使用的对象,例如 True、False、""、[]、{},以及整数和浮点数的任意组合。
这意味着在任何时候,您都可以获得他们的 ID。
id(1)
id(42)
id('')
等等
当然,如果您尝试获取未声明对象的 id,您会得到:
id(myobject1)
Traceback (most recent call last):
File "<pyshell#29>", line 1, in <module>
id(myobject1)
NameError: name 'myobject1' is not defined
由于 myobject1 没有指向任何内容,因此它没有被定义,也没有 id。
然而,有无限数量的对象可以在没有声明的情况下使用,因为数字系统是无限的。因此,在程序中以某种身份使用之前,所有未声明的对象都不可能拥有 id。
这些对象何时获得分配的 ID?