Python的全局变量、局部变量、类变量、实例变量介绍
Python的变量分类
全局变量:模块内、所有函数外、所有class外的变量;
局部变量:函数内的变量,class的方法内且不使用self.修饰的变量;
类变量:class内且不在class的方法内;
实例变量:class的方法内且使用self.修饰的变量。
对于面向过程程序设计涉及:
全局变量:模块中函数外的变量。
局部变量:函数中的变量。
若使用类(class)面向OOP涉及:
类变量:class内,不在class的任何方法内。
实例变量:class的方法内且前面使用self.的变量。
局部变量:函数内的变量,class的方法中且前面没有self.的变量。
全局变量:模块内、所有函数外、所有class外。
Python 作用域(scope)和命名空间(namespace)
https://docs.python.org/zh-cn/3/tutorial/classes.html#python-scopes-and-namespaces
Python程序中的每个名称(变量名、函数名、类名)都有一个作用域(scope),即它所在的命名空间(namespace)。在它的作用域之外,该名称不存在,任何对它的引用都会导致错误。
每当Python解释器(interpreter)需要计算一个名称(变量、函数等)时,它都会按以下顺序搜索名称:
1.首先局部(L,local)名称空间:自定义函数内部的变量名。
2.外层/封闭(E,enclosing)函数名称空间:如嵌套函数的外层函数中的变量名。【中文在线帮助将enclosing functions译为外层函数,有些资料称为封闭函数】
3.

3357

被折叠的 条评论
为什么被折叠?



