1. 整数(int
)
整数是 不可变对象,因此任何对整数的修改都会生成新对象。
a = 5
b = a # b 引用 a 所指向的整数对象 5
a = a + 1 # 创建了新整数对象 6,并将 a 引用重新指向它
print(a) # 输出:6
print(b) # 输出:5
这里 a + 1
生成了新对象 6,而 b
仍然指向原来的 5。
2. 浮点数(float
)
浮点数和整数一样,也是 不可变对象,在修改时会生成新的对象。
x = 3.14
y = x # y 指向与 x 相同的浮点数对象 3.14
x = x + 1 # 创建新浮点数对象 4.14,x 指向新的对象
print(x) # 输出:4.14
print(y) # 输出:3.14
和整数类似,x + 1
生成了新的对象。
3. 字符串(str
)
字符串也是 不可变对象,任何修改都会生成新对象。
s1 = "hello"
s2 = s1 # s2 指向与 s1 相同的字符串对象 "hello"
s1 = s1 + " world" # 创建新字符串对象 "hello world",s1 引用新的对象
print(s1) # 输出