Python值传递和引用传递
1、引用传递
引用传递传递的是可变的数据类型,比如list(数组)、dict(字典)、set(集合)
nums=[1,2,3,4,5]
def con(nums,x):
nums[x]=0
con(nums,1)
print(nums)
输出
[1, 0, 3, 4, 5]
nums={1:0,2:0,3:0,4:0,5:0}
def con(nums,x):
nums[x]=1
con(nums,1)
print(nums)
输出
{1: 1, 2: 0, 3: 0, 4: 0, 5: 0}
s1=set("abche")
def con(s1,x):
s1.remove(x)
con(s1,"a")
print(s1)
输出
{'c', 'e', 'b', 'h'}
2、值传递
值传递传递的是不可变的数据类型,比如number(数字),string(字符),tuple(元组)
number=2
def con(x,y):
x+=y
con(number,1)
print(number)
输出
2
s="abcd"
def con(x,y):
x+=y
con(s,"e")
print(s)
输出