python基础16—变量的作用域

1、全局变量和局部变量

全局变量:定义在文件中的变量,该文件的任何地方都可以访问它

局部变量:定义在函数内部的变量,只能在定义该变量的函数内部使用

函数的作用域:局部变量的作用域:函数内部

                         函数参数的作用域:函数内部

Question1:如何在函数内部定义全局变量?

Answer:使用global进行声明

a=100                     全局变量

def func():

    b=200               局部变量

    global c

    c=300              全局变量

func()

print(c)   得到结果为:300

Question2:函数内部变量和全局变量同名时,函数优先访问哪个?

Answer:函数优先使用内部的局部变量

a=100

def func():

    a=200

    print(a)

func()  运行结果为:200

Question3:函数内部的全局变量名和外部的全局变量名相同会如何?

Answer:按最新的赋值

a=100

def func():

    global a

    a=200

    print(a)

func()

print(a)

运行结果为:200

                     200

 

错误示例1:

a=100

def func():

    print(a)

    a=200

func()  运行结果为:报错

错误示例2:

a=100

def func():

    a=a+1

    print(a)

func()  运行结果为:报错

报错原因:在定义a之前引用了a

posted @ 2021-09-13 09:42  2orange  阅读(81)  评论(0)    收藏  举报