python中变量的生命周期

最近在写python的时候发现一个好玩的现象,就是在if else重定义的变量,没有声明全局,在外部也可以使用,

这里涉及到一个python变量生命周期的问题。python能够改变变量作用域的代码段是def、class、lamda.
if/elif/else、try/except/finally、for/while 并不能涉及变量作用域的更改,

也就是说他们的代码块中的变量,在外部也是可以访问的
变量搜索路径是:本地变量->全局变量


阅读更多

扫码向博主提问

One-for-All

君问算法之道?三才万象,皆入此门中。
  • 擅长领域:
  • 机器学习
  • 统计学习
  • Python
  • 数据挖掘
  • 分布式
去开通我的Chat快问
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页