Python id() 函数用法
2023-09-17 22:28:05
id()
函数返回对象的标识。在 Python 中,所有变量或文本值都是对象,每个对象都有一个唯一的标识作为整数,该标识在其整个生命周期中对该对象保持不变。
语法:
id(object)
参数:
对象:需要返回其标识的对象。
返回值:
返回一个整数值。
文本值的 ID(Id of Literal Values)
所有文字值都是 Python 中的对象。所以它们将具有 Id 值。下面的示例演示文本值的标识。
print("Id of 10 is: ", id(10))
print("Id of 10.5 is: ", id(10.5))
print("Id of 'Hello World' is: ", id('Hello World'))
print("Id of list is: ", id([1, 2, 3, 4, 5]))
输出:
Id of 10 is: 8791113061
Id of 10.5 is: 3521776
Id of 'Hello World' is: 60430408
Id of list is: 5466244
请注意,本地PC上的输出会有所不同。
变量的 ID(Id of Variables)
id()
方法还返回变量或对象的标识,如下所示。
num = 10
mystr = 'Hello World'
print("Id of num is: ",id(i))
print("Id of mystr is: ",id(mystr))
输出:
Id of num is: 140730065134256
Id of mystr is: 1838584467312
两个相同值的标识相同,如下所示。
num = 10
print("Id of num is: ", id(num))
print("Id of 10 is: ",id(10))
输出:
Id of i is: 8791113061696
Id of 10 is: 8791113061696
在上面的示例中,id 10 和变量 num
相同,因为两者都具有相同的文本值。
自定义类对象的 ID(Id of Custom Class Objects)
下面获取用户定义类的对象的 id。
class student:
name = 'John'
age = 18
std1 = student()
print(id(std1))
std2 = student()
print(id(std2))
std3 = student()
std3.name = 'Bill'
print(id(std2))
输出:
58959408
59632455
58994080
上面,每个对象都有不同的 id,无论它们是否具有相同的数据。
本文内容总结: