1 li1=[1,2,3,4,5] 2 str1='abc' 3 4 def func1(): 5 li1=[7,8,9] 6 str1='efg' 7 print(str1) 8 9 func1() 10 print(li1)#输出的结果为【1,2,3,4,5】,并没有因为def函数改变
1 li1=[1,2,3,4,5] 2 str1='abc' 3 4 def func1(): 5 li1=[7,8,9] 6 str1='efg' 7 return li1 8 9 re=func1() 10 print(re) 11 print(li1)#输出的结果为【1,2,3,4,5】,并没有因为def函数改变
输出结果为
[7,8,9]
[1,2,3,4,5]
利用return方法返回局部变量中的值,如果注释掉return li1 则输出结果None
li1=[1,2,3,4,5] str1='abc' def func1(): # li1=[7,8,9] li1[0]=111 #对全局变量进行的修改 str1='efg' return li1 re=func1() print(re) print(li1)#输出的结果为【1,2,3,4,5】,并没有因为def函数改变
输出结果为
[111, 2, 3, 4, 5]
[111, 2, 3, 4, 5]
可变数据类型一般是进行修改,不可变数据类型多采用重新赋值。