美文网首页
02-作用域

02-作用域

作者: 阅心_5cc2 | 来源:发表于2018-07-26 08:48 被阅读0次

作用域:一个变量可以使用的范围,就是这个变量的作用域(函数和类可以影响变量的作用域)
全局变量:从声明开始,到文件结束都可以使用
局部变量:在函数中声明的变量是局部变量,作用域就是从声明开始到所在函数的结束

a = 10 # 这是一个全局变量
print(a)

def func1():
    print(a)
for x in range(10):
    b = 100
    print(b)
    print(a)
print('=====',b)
def func2():
    print(b)
func2()

2.局部变量

def func3():
    aaa = 100
func3()
#print(aaa)  # 会报错 :因为aaa是局部变量

3.global 和 nonlocal

global:作用是在函数中创建一个全局变量
格式:

global 变量名
变量名 = 值

例如:

abc = 'abc'  # 全局变量
bcd = 'bcd'
def func4():
    abc = 'aaa'  #局部变量
    print(abc)

    global bcd  # 说明bcd是一个全局变量
    bcd = 200
    print(bcd)
func4()
print(abc)
print(bcd)

练习:声明一个变量,统计一个函数调用的次数

count = 0
def my_func():
    global count
    count += 1
    print('=======')
my_func()
my_func()
print('-------')
a = 10
my_func()
print(count)

nonlocal:在函数中声明函数的时候,才需要使用

def func11():
    a_11 = 10
    print(a)
    #python中函数里面可以声明函数的
    def func12():
        nonlocal a_11
        a_11 = 100
        print('内部',a_11)
        print('内部函数')
    func12()
    print('外部:',a_11)
    func11()
# print(a_11)

相关文章

  • 02-作用域

    作用域:一个变量可以使用的范围,就是这个变量的作用域(函数和类可以影响变量的作用域)全局变量:从声明开始,到文件结...

  • 02-作用域链

  • day10-函数总结

    02-变量的作用域 1.变量的作用域 变量在程序中能使用的范围 1.全局变量 声明在函数或者类的外部的变量都是全局...

  • js作用域

    1 - 作用域 1.1 作用域概述 全局作用域 局部作用域(函数作用域) 1.2 全局作用域 1.3 局部作用域 ...

  • 作用域,作用域链

    1 - 作用域 1.1 作用域概述 全局作用域 局部作用域(函数作用域) 1.2 全局作用域 1.3 局部作用域 ...

  • 变量作用域

    变量作用域:静态作用域、动态作用域JS变量作用域:JS使用静态作用域JS没有块级作用域(全局作用域、函数作用域等)...

  • 一网打尽 JavaScript 的作用域

    JavaScript 的作用域包括:模块作用域,函数作用域,块作用域,词法作用域和全局作用域。 全局作用域 在任何...

  • 作用域

    词法作用域,动态作用域,全局作用域,局部作用域,函数作用域,块级作用域,有些地方还能看到隐式作用域和显示作用域。 ...

  • JS的作用域

    JS的作用域: 全局作用域、函数作用域、eval 作用域、块级作用域 全局作用域: 函数作用域: 结果截屏: 说...

  • [ES6]1.1作用域

    作用域 全局作用域(global/window) 函数作用域/局部作用域(function) 块状作用域({}) ...

网友评论

      本文标题:02-作用域

      本文链接:https://www.haomeiwen.com/subject/qahmmftx.html