python __main__中的变量是全局变量?
- main 函数内的变量不是全局变量,而是局部变量
- 只不过它的生命周期和全局变量一样长
- 全局变量一定是定义在函数外部的
如何理解python的 main ?
- 当.py文件被直接运行时,
if __name__ == '__main__'
之下的代码块将被运行; - 当.py文件以模块形式被导入时,
if __name__ == '__main__'
之下的代码块不被运行。
如何区分类的全局变量和局部变量?
class G():
fly = False #类中的全局变量
def __init__(self):
selg._age = 1 #加一个下划线,是一种不成文的规定,意思是该变量是私有变量
self.long = 2 #普通变量
self.__width = 3 #有两个下划线,是一种“真”私有变量
def run(self):
r = 4 #局部变量
print("I am running!.")