全局变量和局部变量
Posted lym1985
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了全局变量和局部变量相关的知识,希望对你有一定的参考价值。
1 # 有同名局部变量,优先使用局部变量
2 age = 18
3 def nianling():
4 age = 200
5 print("新age是:",age)
6 nianling()
7 print("全局变量的age是:",age)
8
9
10 # 无同名的局部变量,对于全局变量是可变类型的,可以对全局变量内部进行修改
11 name = ["赵","钱","孙"]
12 def mingzi():
13 name.append("李")
14 print("新name是:",name)
15 mingzi()
16 print("全局变量的name是:",name)
17
18 # 有global关键字,无同名的局部变量
19 hobby = ["game","football"]
20 def aihao():
21 global hobby
22 hobby = ["basketball"]
23 hobby.append("haha")
24 print("新hobby是:",hobby)
25 aihao()
26 print("全局变量的hobby是:",hobby)
以上3个函数的运行结果是:
新age是: 200
全局变量的age是: 18
新name是: [‘赵‘, ‘钱‘, ‘孙‘, ‘李‘]
全局变量的name是: [‘赵‘, ‘钱‘, ‘孙‘, ‘李‘]
新hobby是: [‘basketball‘, ‘haha‘]
全局变量的hobby是: [‘basketball‘, ‘haha‘]
1 # 以下为错误实例:因为有两个gender,所以会报错。如果以后声明全局变量,下面还会有其他操作,要把golbal往前提 2 gender = ["men","women"] 3 def xingbie(): 4 gender = ["男","女"] 5 global gender 6 print(gender) 7 gender()
为了避免上面的事情发生,命名规则上,全局变量都是大写,局部变量都是小写。这样就不会出现这种情况了
以上是关于全局变量和局部变量的主要内容,如果未能解决你的问题,请参考以下文章