python函数理解整理

函数中我们传入的参数是地址还是值

例子:def test(x):#函数传的是值还是地址? 传值是不能改变的 地址是可以改变的
x[0] = 2
print(id(x))
print(x)
i=[1,2,3,4,5]
print(id(i))
test(i)
for j in i:
print(j)
发现传送的是传送的是地址(类似Java的强引用)
原先I发生改变
如果反过来 参数不喜欢被改变可以
test(list(i)) 消除强引用,参数这个时候传入的就是值,地址发生改变
i 没变
for j in i:
print(j)

变量的作用域

i = 10
def num():
global i #不建议这样操作
i += 10
print(i)
num()

python函数的重载是不可以的,非要只会根据位置关系覆盖

猜你喜欢

转载自blog.csdn.net/hh19900902/article/details/79142945
今日推荐