python函数常见关键字分享
短信预约 -IT技能 免费直播动态提醒
1.global关键字
默认情况下,在局部作用域对全局变量只能进行:读取,修改内部元素(可变类型),无法对全局变量进行重新赋值
读取:
CITY=['北京','上海']
def func():
print(CITY) # ['北京','上海']
func()
修改内部元素(可变类型)
CITY=['北京','上海']
def func():
CITY.append('安徽')
print(CITY) # ['北京','上海','安徽']
func()
print(CITY) # ['北京','上海','安徽']
无法对全局变量重新赋值
CITY=['北京','上海']
def func():
CITY=['安徽']
print(CITY) #['安徽']
func()
print(CITY) # ['北京','上海']
如果想在局部作用域对全局变量重新赋值,基于global关键字实现
CITY=['北京','上海']
def func():
global CITY=['安徽']
print(CITY) #['安徽']
func()
print(CITY) #['安徽']
2.nolocal关键字
将上一级作用域的变量重新赋值
name = 'root'
def outer():
# name=123
name = '你好'
def func():
# 将又上一级变量name重新赋值为123
nonlocal name
# name=123
name = "wxy"
def inner():
#将上一级变量name重新赋值为123
nonlocal name
name = 123
inner()
print(name)
func()
print(name)
outer()
print(name)
# 123
# 123
# root
3.yield from
python3.3引入yield from
在yield函数中调用其它的yield函数
def func():
yield 2
yield 2
def func1():
yield 1
yield 1
yield from func()
yield 1
from i in func1():
print(1)
到此这篇关于python函数常见关键字分享的文章就介绍到这了,更多相关python函数关键字内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341