以下是一个关于变量引用和可变性的代码示例:
# 示例1:变量引用
x = 5
y = x # y引用了x的值
x = 10 # 修改x的值
print(y) # 输出 5,y仍然引用原来x的值,不会随x的变化而变化
# 示例2:可变性
list1 = [1, 2, 3]
list2 = list1 # list2引用了list1的值
list1.append(4) # 修改list1的值
print(list2) # 输出 [1, 2, 3, 4],list2也随着list1的变化而变化
# 示例3:可变性
tuple1 = (1, 2, 3)
tuple2 = tuple1 # tuple2引用了tuple1的值
# tuple1.append(4) # 尝试修改tuple1的值(元组是不可变的),会引发错误
print(tuple2) # 输出 (1, 2, 3),tuple2不会随tuple1的变化而变化
在示例1中,变量x和y都是整数类型的变量。当y引用了x的值后,修改x的值不会影响到y,因为整数是不可变的。而在示例2中,变量list1和list2都是列表类型的变量。当list2引用了list1的值后,修改list1的值会影响到list2,因为列表是可变的。
另外,在示例3中,变量tuple1和tuple2都是元组类型的变量。尝试修改tuple1的值会引发错误,因为元组是不可变的。因此,tuple2不会随tuple1的变化而变化。
这些示例展示了变量引用和可变性的不同行为,对于理解这两个概念非常有帮助。