您的位置:首页 > 编程语言 > Python开发

week04_python函数的销毁

2018-09-17 10:11 447 查看
函数的销毁
全局函数:
def foo(xyz = [], u = 'abc', z = 123):
xyz.append(1)
return xyz
print(foo(), id(foo), foo.__defaults__)

def foo(xyz = [], u = 'abc', z = 123):
xyz.append(1)
return xyz
print(foo(), id(foo), foo.__defaults__)

del foo
print(foo(), id(foo), foo.__defaults__)
全局函数销毁:

1.重新定义同名函数;
2.del语句删除函数对象;
3.程序结束时;
局部函数:

def foo(xyz = [], u = 'abc', z = 123):
xyz.append(1)
def inner(a = 10):
pass
print(inner)
def inner(a = 100):
print(xyz)
print(inner)
return inner

bar = foo()
print(id(foo), id(bar), foo.__defaults__, bar.__defaults__)

del bar
print(id(foo), id(bar), foo.__defaults__, bar.__defaults__)
局部函数的销毁:

1.重新在上级作用域定义同名函数;
2.del语句删除函数对象;
3.上级作用域销毁时;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  functions 销毁