Python进阶学习:变量

变量想必大家在学习编程时就已经学习了吧。

我们在普通的编程里,变量的修改是会被整个程序看见的。变量在函数里会发生什么呢?

def my():
    m=0
print(m)

运行后显示

Traceback (most recent call last):
File “***”, line 3, in <module>
print(m)
NameError: name ‘m’ is not defined

这是怎么回事呢?原来,m变量只在my函数里才起作用。所以我们要让他的更改让“全世界”都知道。

解决方案:m=0的上面添加一行global m(global关键字要在定义变量之前加)

运行程序:0

那么,我们的程序有多个函数,但整个程序里我们的单独的变量只在一个单独的函数里面使用,我们还可以使用关键字。这个关键字的作用是仅这个函数可见。

def my():
    nonlocal abc
    abc=0
    print(abc)
print(abc)

运行上述代码,程序显示
SyntaxError: no binding for nonlocal ‘abc’ found
这是因为,上面使用的关键字只是把abc当成局部变量了。


下面,我来总结一下本篇文章的知识。

1.global把变量变成全局变量
2.nonlocal把变量变成局部变量
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值