Python3 变量作用域

# 变量的作用域:是指一个变量所产生作用的范围,在哪一个范围内能被解释器识别。

# print(name)

# 直接输出的话会出现这样的一个错误:

# NameError: name 'name' is not defined

# 变量的作用域:全局变量和局部变量

# 一般声明在函数外部的变量,被称为全局变量,作用范围是整个.py文件内,都可以使用,都能被解释器识别到

# 一般声明在函数内部的内部的变量,可以理解为一个局部变量,该变量只能在函数内部使用,超出范围,变量就不能在使用

# 默认情况下,如果全局变量名和局部变量名相同都是name,在函数内部是无法识别到函数外部的全局变量的,而会在函数内部声明一个新的局部变量叫name

# name = '张三'

# def show( ):

# local(局部的) variable(变量)'name'  referenced(引用)  before(在。。之前)  assignment(声明):因为变量在进行引用时,会采用就近原则,看最近声明的变量在哪。而最近声明的变量就是name = '李四', 所以出现了先引用,后声明的错误

 ## print(name)(当把这三句代码运行时会出现以下错误)

# name = '李四'

# print ('===', name)

# show( )(当不执行##print(name)这句代码)

# 输出的结果是:


# 如果在函数内部,想修改外部的全局变量(可以理解为重新赋一个值),需要使用global

# global的作用:声明一个变量是已经声明好的全局变量,直接使用即可,可以避免声明一个和全局变量重名的局部变量

 # global name

# name = '王五'

# print('===', name)

# show( )

# 输出的结果是:


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

她最爱橘了

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值