【说站】python自由变量是什么
2024-11-24
26
python自由变量是什么
1、自由变量是指未绑定到本地作用域的变量。如果自由变量绑定的值是可变的,变量仍然可以在封闭包中操作。如果是不可变的(数字、字符串等。),在封闭包中重新绑定自由变量会出错。
def make_averager(): count = 0 total = 0 def averager(new_value): count += 1 total += new_value return total / count return averager >>> avg = make_averager() >>> avg(10) Traceback (most recent call last): ... UnboundLocalError: local variable 'count' referenced before assignment
2、为了将变量标记为自由变量,可以使用nonlocal语句进行声明,nonlocal语句可以解决。
def make_averager(): count = 0 total = 0 def averager(new_value): nonlocal count, total # 声明count、total为自由变量 count += 1 total += new_value return total / count return averager
以上就是python自由变量的介绍,希望对大家有所帮助。更多Python学习指路:python基础教程
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
更新于:14天前赞一波!1
相关文章
- 【说站】python tqdm有哪些用法
- 【说站】python正态分布中的normal函数
- 【说站】python socket连接客户端的方法
- 【说站】python socketserver处理客户端的流程
- 【说站】python TCP和UDP协议的区别分析
- 【说站】python if三元表达式如何使用
- 【说站】python自定义进度条显示信息
- 【说站】python线程阻塞的解决
- 【说站】python binomial生成二项分布随机数
- 【说站】python二项分布的概率使用
- 【说站】python计数排序法是什么
- 【说站】python归并排序是什么
- 【说站】python使用choice生成随机数
- 【说站】python归并排序的实现原理
- 【说站】python希尔排序的使用原理
- 【说站】python Task如何在协程调用
- 【说站】python事件循环如何使用?
- 【说站】await在python协程函数的使用
- 【说站】python使用jinja2进行渲染
- 【说站】python统计字符串字符出现次数
文章评论
评论问答