# 函数的内存分配deffunc(a, b):print('参数:',id(a))
a =10# 创建一个同参数a相同名字的print('定义:',id(a))
b[0]=20
a =100# 不可变数据类型print('函数外的:',id(a))
b =[2,4,6]# 可变数据类型
func(a, b)print(a, b)
# 作用域
a =100# 全局变量deffunc():
a =10# 局部变量
b =20# 局部变量print('函数内部', a)
func()# 函数调用结束后,栈帧被释放print('函数外部', a)# print(b)
Demo3
# global语句# 在函数内部修改函数外部的变量a
a =100# 全局变量print('函数外:',id(a))
L =[2,4,6]deffunc(x):# 局部变量# global a, x # 声明当前变量为全局变量global a # 声明当前变量为全局变量
a =10