作用域的定义: 就是变量可以使用的范围
1.全局变量
# 第一种: a = 100 #全局变量 作用域:从定义开始到整个文件结束都可以使用 print(a) #>>>100 # 第二种: if True: b = 200 #这也是全局变量,如果if条件为假,则会报错 print(b) #>>>200 # 注意:当前这个语句是否能执行 # 第三种: flag = True while flag: c = 300 #这也是全局变量 flag = False print(c) #>>>300 # 总结:选择结构和循环结构不会影响变量的作用域
2.局部变量--->定义在函数里面
# 第一种: def foo(): print('hello') d = 400 #局部变量 foo() # print(fa) #>>>报错 fa未定义 # 总结:a.函数中定义的变量的作用域就是整个函数.从定义开始到函数结束 # b.函数是不会产生作用域的 # 第二种: e = 500 def foo_1(): print('hello') e = 600 print(e) #>>>600 foo_1() print(e) #>>>500 # 总结:如果全局变量和局部变量同名,局部变量作用域内使用的是局部变量