学习笔记(01):Python入门视频精讲-变量作用域和命名空间

立即学习:https://edu.csdn.net/course/play/9347/195828?utm_source=blogtoedu

两种作用域:全局作用域和局部作用域(函数作用域)

1.全局作用域:函数以外的作用域都是全局作用域,在全局作用域中定义的变量全部是全局变量。

2.函数作用域也称为局部作用域。

在函数内部的区域,没调用一次函数就会创建一个新的函数作用域,在函数作用域中作用的变量就是局部变量。

 

关于变量的查找顺序

先在当前的作用域中找,如果没有则向上一级作用域中查找,直到全局作用域中查找,都没有则报错。

 

a = 5 (全局变量)

 

if True:

     c = 5(这也是一个全局变量)

 

def  fn()

       b = 8(局部变量)

       print{‘函数内部:a =’, a}

       print{‘函数内部:b =’, b}

 

fn()

 

结果:函数内部:a = 5

           函数内部:b = 8

(全局变量在函数内外都可以直接应用)

 

 print{‘函数外部:a =’, a}

 print{‘函数外部:b =’, b}


结果:错误,因为b变量没有定义。

 

print{‘函数外部:c =’, c}

 

x = 1

def  f1():

       x = 2

       def  f2():

              x = 3

              print (x)

 

def  fn2():

       a = 10(在函数为变量赋值时,均默认是为局部变量赋值)

       global  a = 10(如果你想在函数中修改全局变量的值,要使用global关键字来声明变量)

      print{‘函数内部:a =’, a}

fn2()

print{‘函数外部:a =’, a}

结果(若不用global关键字来声明):函数内部:a = 10

函数外部:a = 5

 

结果(若不用global关键字来声明):函数内部:a = 10

函数外部:a = 10

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页