函数的销毁python
全局函数:app
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__)
全局函数销毁:
ide
1.从新定义同名函数;函数
2.del语句删除函数对象;对象
3.程序结束时;作用域
局部函数:
it
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__)
局部函数的销毁:
class
1.从新在上级做用域定义同名函数;程序
2.del语句删除函数对象;di
3.上级做用域销毁时;