您的位置:首页 > 编程语言 > Python开发

python之全局变量和局部变量的区别

2018-01-24 23:28 567 查看


局部变量

分析当执行到第二行的时候需要开辟内存保存哈哈
当第二行代码执行完成后 后面没有可执行的代码 标识这程序结束
当程序结束后 python就会干掉my_str (作用使用它持有的内存) my_str = "哈哈"
# 定义一个函数
def my_func1():
# 定义一个变量
# 局部变量(定义在函数内部的变量就叫做局部变量)
# 局部变量的作用域(使用范围)是在函数的内部
# 局部变量 内存使用时调用函数执行第13行代码
num = 10
print(num)
# 当执行完第14行标识这函数执行完成 也就是会吧变量内存释放

# 调用函数
my_func1()


全局变量

定义一个变量(全局变量就是定义在函数外面的变量)
全局变量作用域是整个模块内部
在函数的内部可以使用全局变量
num = 10

def my_func1():
print(num)

def my_func2():
print(num)

my_func1()
my_func2()

在函数的内部使用一个变量
遵循一个规则: 先在函数内部找 找到直接使用 如果找不到到函数外部找 如果还是找不到 就报错(由内到外)
函数内部对全局变量的值进行修改 global
标识下函数内部的num不是一个局部变量 而是对全局变量重新赋值
可以对全局变量的值进行修改
num = 10

def my_func():
# 标识下函数内部的num不是一个局部变量 而是对全局变量重新赋值
global num
# 可以对全局变量的值进行修改
num = 20
print("2", num)

my_func()
# 当打印的时候 必须打印的是 3, 20
print("3", num)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: