详解python 局部变量与全局变量

本文将详细分析python的全局变量与局部变量,学过php的人都知道,php里面的全局变量是无法在function里面去使用的,只有超全局变量才可以,那么python会怎么处理全局变量与局部变量呢?下面我们来看一下:

 

其实python里面的全局变量,一般跟c语言里面是一样的

1
2
3
4
5
6
7
8
9
10
11
12
language  =  'python'
def  foo1():
     language  =  'hello'  # 这里是局部变量
     print (language )  # 打出hello,并且不会影响全局变量language (全局那个bar仍然是'python')
def  foo2():
     print (language )  # 打出python # 因为没有声明局部变量所以python会搜索全局的language ,这个bar是全局的
def  foo3():
     global  language  # 告诉python下面的bar是全局的
     language  =  'hello'  # 这里是全局变量
     print (language)  # 打出hello,全局的language 已经改为hello不再是python了
#再打印一下language 看一下
print (language) #打印出hello,因为在foo3里全局变量已经被改变了

这也说明使用这种方式可以更改python的全局变量

 

但是这与php里面不同:

1
2
3
4
5
$name  'php' ;
function  foo1{
     echo  $name
}
foo1  //将会得到一条警告:name变量不存在

 

所以各位同学在做python开发时一定要注意区分

转载于:https://www.cnblogs.com/paranoia/p/6178433.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值