Files
python3-cookbook/cookbook/c07/p12_closure_access.py

32 lines
447 B
Python
Raw Normal View History

2015-01-26 17:41:33 +08:00
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
"""
Topic: 闭包访问函数内部变量
Desc :
"""
def sample():
n = 0
# Closure function
def func():
print('n=', n)
# Accessor methods for n
def get_n():
return n
def set_n(value):
nonlocal n
n = value
# Attach as function attributes
func.get_n = get_n
func.set_n = set_n
return func
f = sample()
f()
f.set_n(10)
f()