几天在用python的类的时候出现了一个我很费解的问题,找了半天资料都没明白,特来问问大神。。。不多说,直接上代码
a=1
class a1:
def change(self,a):
a=9
print(a)
x=a1()
x.change(a)
print(a)
这样的话输出的呢,就是:
9
1
但是问题来了。。。当我把a换成数组后,赋初值a[0]=1后像这样
a=[1]
class a1:
def change(self,a):
a[0]=9
print(a)
x=a1()
x.change(a)
print(a)
输出就变成了:
[9]
[9]
。。。。。。。。。。。。。。卧槽?傻傻分不清了。。。这是为啥咧?讲道理的话呢,第二个不应该是:[9]和[1]吗?
a=1
class a1:
def change(self,a):
a=9
print(a)
x=a1()
x.change(a)
print(a)
这样的话输出的呢,就是:
9
1
但是问题来了。。。当我把a换成数组后,赋初值a[0]=1后像这样
a=[1]
class a1:
def change(self,a):
a[0]=9
print(a)
x=a1()
x.change(a)
print(a)
输出就变成了:
[9]
[9]
。。。。。。。。。。。。。。卧槽?傻傻分不清了。。。这是为啥咧?讲道理的话呢,第二个不应该是:[9]和[1]吗?