局部变量

什么是局部变量:

def change_name(name):                                 定义了一个改名字的函数

      print("before change",name)                        这一行以及下面的3行代表这个这个函数的逻辑

      name = "zaizai"

      print("after change",name,school)

name = "choubi"                                                   

change_name(name)                                          引用函数

print(name)

运行结果可以看到为:

before change choubi
after change zaizai
choubi

可以发现,最后的名字print出来是choubi,也就是说:name=“zaizai”只在函数这个局部是起作用的,除了这个函数就没有用了,所以是一个局部变量。

如何设一个全局变量,第一种方法:在一开头声明。第二种方法:在函数里写global xxxxx(变量名)。

-------------------------------------------分割线---------------------------------------------

school = 'sufe '                                                  全局变量
def change_name(name):                                改名字的一个函数
      global school                                               我在这个函数中要改这个局部变量为全局变量
      school = "oldboy"
      print("before change",name,school)
      name = "zaizai"                                            出了这个函数就没用了
      age=19
      print("after change",name,school)
print(age)                                                           根本找不到age
name = "choubi"
change_name(name)                                         代表9 10 11 三行代码
print(name)                                                         实际情况,没有改掉,第10行其实是一个局部
print(school)                                                        变量,可以理解为这个函数就是第十行的作用域

 

posted @ 2017-11-03 18:11  仔仔爱python  阅读(189)  评论(0)    收藏  举报