python基础16—变量的作用域
1、全局变量和局部变量
全局变量:定义在文件中的变量,该文件的任何地方都可以访问它
局部变量:定义在函数内部的变量,只能在定义该变量的函数内部使用
函数的作用域:局部变量的作用域:函数内部
函数参数的作用域:函数内部
Question1:如何在函数内部定义全局变量?
Answer:使用global进行声明
a=100 全局变量
def func():
b=200 局部变量
global c
c=300 全局变量
func()
print(c) 得到结果为:300
Question2:函数内部变量和全局变量同名时,函数优先访问哪个?
Answer:函数优先使用内部的局部变量
a=100
def func():
a=200
print(a)
func() 运行结果为:200
Question3:函数内部的全局变量名和外部的全局变量名相同会如何?
Answer:按最新的赋值
a=100
def func():
global a
a=200
print(a)
func()
print(a)
运行结果为:200
200
错误示例1:
a=100
def func():
print(a)
a=200
func() 运行结果为:报错
错误示例2:
a=100
def func():
a=a+1
print(a)
func() 运行结果为:报错
报错原因:在定义a之前引用了a

浙公网安备 33010602011771号