python local函数_Python内置函数locals

英文文档:

locals()

Update and return a dictionary representing the current local symbol table. Free variables are returned by locals() when it is called in function blocks, but not in class blocks.

说明:

1. 函数功能返回当前作用域内的局部变量和其值组成的字典,与globals函数类似(返回全局变量)>>> locals()

{'__package__': None, '__loader__': , '__doc__': None, '__name__': '__main__', '__builtins__': , '__spec__': None}

>>> a = 1

>>> locals() # 多了一个key为a值为1的项

{'__package__': None, '__loader__': , 'a': 1, '__doc__': None, '__name__': '__main__', '__builtins__': , '__spec__': None}

2. 可用于函数内。>>> def f():

print('before define a ')

print(locals()) #作用域内无变量

a = 1

print('after define a')

print(locals()) #作用域内有一个a变量,值为1

>>> f

>>> f()

before define a

{}

after define a

{'a': 1}

3. 返回的字典集合不能修改。>>> def f():

print('before define a ')

print(locals()) # 作用域内无变量

a = 1

print('after define a')

print(locals()) # 作用域内有一个a变量,值为1

b = locals()

print('b["a"]: ',b['a'])

b['a'] = 2 # 修改b['a']值

print('change locals value')

print('b["a"]: ',b['a'])

print('a is ',a) # a的值未变

>>> f()

before define a

{}

after define a

{'a': 1}

b["a"]: 1

change locals value

b["a"]: 2

a is 1

>>>

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值