当前位置: 代码迷 >> 综合 >> Python之全局变量 和 局部变量
  详细解决方案

Python之全局变量 和 局部变量

热度:95   发布时间:2023-11-23 08:33:58.0

全局变量 和 局部变量

  • 局部变量:在函数内部定义的变量,就是局部变量, 是函数内部的占位符,与全局变量可能重名但不同,函数运算结束后,局部变量被释放 为组合数据类型且未创建,等同于全局变量
  • 全局变量:在函数外部定义的变量,或者在函数的内部,用global关键字定义的变量,就是全局变量,如果局部变量未真实创建,则是去全局变量
  • 作用域: 作用的范围 局部变量的作用范围只限定在函数的内部; 全局变量的作用范围横跨整个文件;
  • 变量的生命周期:内置 > 全局 > 局部

局部变量

def func():a = 1                          # 1.定义一个局部变量print(a)                       # 2.获取局部变量a = 20                         # 3.修改局部变量print(a)                       # 4.获取局部变量
func()
函数外部无法调用
print(a)

全局变量

b = 10                            # (1) 定义一个全局变量
print(b)                          # (2) 获取一个全局变量
b = 30                            # (3) 修改一个全局变量
print(b)
def func():print(b)                      # 获取一个全局变量
func()

在函数内部定义或者修改全局变量

  • 可以使用global保留字在函数内部使用全局变量

c = 100
def func():c = 200
func()
print(c)                         # 100global关键字c = 100
def func():	global c                     # 标记声明这个c变量为全局变量c = 200                      # 修改全局变量
func()
print(c)                         # 100global关键字def func():global d                     # 标记声明这个d变量为全局变量d = 500
func()
print(d)
总结: 在函数内部,如果标记的这个变量不存在,意味着,创建一个全局变量在函数内部,如果标记的这个变量存在,意味着,修改一个全局变量