• 局部变量和全局变量


    全局与局部变量

    定义:
    在子程序中定义的变量称为局部变量,在程序的一开始定义的变量称为全局变量。
     
    作用域:
    全局变量作用域是整个程序,局部变量作用域是定义该变量的子程序。
     
    当全局变量与局部变量同名时:
    在定义局部变量的子程序内,局部变量起作用;在其它地方全局变量起作用。
    1 def change_name(name):
    2     print('before change',name)
    3     name='Zoe'  #局部变量。这个函数就是这个局部变量的作用域。
    4     print('after change',name)
    5 
    6 name='zoe'  #全局变量。
    7 change_name(name)
    8 print(name)

    将函数中的局部变量声明为全部变量。

     1 def change_name(name):
     2     global school  #用global在函数中将布局变量声明为全局变量。
     3     school='666'
     4     print('before change',name)
     5     name='Zoe'  #局部变量。这个函数就是这个局部变量的作用域。
     6     print('after change',name)
     7 
     8 name='zoe'
     9 change_name(name)  
    10 print(name)
    11 print(school)  #在函数中global定义全局变量,如果函数不调用,则会返回school未定义。

    除了字符串,元组,数字等本身就不能变的变量不能在函数中进行修改,列表,字典和集合等定义好的全局变量,在子程序中还是可以进行修改的。

    看下面的函数:

    1 names=['zoe','alice']
    2 def change():
    3     print(names)
    4     names[0]='Zoe'
    5 
    6 print(names)
    7 change()
    8 print(names)

    返回:

  • 相关阅读:
    day44
    day38
    day37
    day36
    作业35
    day35
    作业34
    day34
    day33
    Windows API 第三篇
  • 原文地址:https://www.cnblogs.com/zoe233/p/7065855.html
Copyright © 2020-2023  润新知