分享python函数常见关键字


Posted in Python onApril 26, 2022

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 相关文章推荐
python中使用xlrd、xlwt操作excel表格详解
Jan 29 Python
详解python中requirements.txt的一切
Mar 03 Python
python判断数字是否是超级素数幂
Sep 27 Python
python numpy元素的区间查找方法
Nov 14 Python
python 多个参数不为空校验方法
Feb 14 Python
pytorch神经网络之卷积层与全连接层参数的设置方法
Aug 18 Python
Python使用Slider组件实现调整曲线参数功能示例
Sep 06 Python
tensorflow ckpt模型和pb模型获取节点名称,及ckpt转pb模型实例
Jan 21 Python
Python cookie的保存与读取、SSL讲解
Feb 17 Python
Python3基于plotly模块保存图片表格
Aug 03 Python
Jupyter notebook命令和编辑模式常用快捷键汇总
Nov 17 Python
tensorflow2.0教程之Keras快速入门
Feb 20 Python
python和Appium的移动端多设备自动化测试框架
Apr 26 #Python
Python查找算法的实现 (线性、二分,分块、插值查找算法)
Python 装饰器(decorator)常用的创建方式及解析
Apr 24 #Python
解决IDEA翻译插件Translation报错更新TTK失败不能使用
python使用BeautifulSoup 解析HTML
Apr 24 #Python
Python中npy和mat文件的保存与读取
Apr 24 #Python
python小型的音频操作库mp3Play
Apr 24 #Python
You might like
Win2000+Apache+MySql+PHP4+PERL安装使用小结
2006/10/09 PHP
PHP has encountered an Access Violation at 7C94BD02解决方法
2009/08/24 PHP
php递归创建目录的方法
2015/02/02 PHP
PHP动态柱状图实现方法
2015/03/30 PHP
CI框架数据库查询之join用法分析
2016/05/18 PHP
用javascript实现给图片加链接
2007/08/15 Javascript
Jquery选择器中使用变量实现动态选择例子
2014/07/25 Javascript
JavaScript实现把rgb颜色转换成16进制颜色的方法
2015/06/01 Javascript
JavaScript中toString()方法的使用详解
2015/06/05 Javascript
js实现横向伸展开的二级导航菜单代码
2015/08/28 Javascript
阿里巴巴技术文章分享 Javascript继承机制的实现
2016/01/14 Javascript
百度搜索框智能提示案例jsonp
2016/11/28 Javascript
详解Javascript数据类型的转换规则
2016/12/12 Javascript
Angularjs中ng-repeat-start与ng-repeat-end的用法实例介绍
2016/12/31 Javascript
javaScript生成支持中文带logo的二维码(jquery.qrcode.js)
2017/01/03 Javascript
浅谈express 中间件机制及实现原理
2017/08/31 Javascript
浅谈angular.copy() 深拷贝
2017/09/14 Javascript
VUE兄弟组件传值操作实例分析
2019/10/26 Javascript
JS函数参数的传递与同名参数实例分析
2020/03/16 Javascript
vue实现商品列表的添加删除实例讲解
2020/05/14 Javascript
Python 爬虫的工具列表大全
2016/01/31 Python
python 打印直角三角形,等边三角形,菱形,正方形的代码
2017/11/21 Python
Python实现一个服务器监听多个客户端请求
2018/04/12 Python
对python mayavi三维绘图的实现详解
2019/01/08 Python
在python中logger setlevel没有生效的解决
2020/02/21 Python
Python基于tkinter canvas实现图片裁剪功能
2020/11/05 Python
详解CSS3弹性伸缩盒
2020/09/21 HTML / CSS
GANT葡萄牙官方商店:拥有美国运动服传统的生活方式品牌
2018/10/18 全球购物
南京某软件公司的.net面试题
2015/11/30 面试题
初三家长会邀请函
2014/01/18 职场文书
感恩节红领巾广播稿
2014/02/11 职场文书
党代会心得体会
2014/09/04 职场文书
学校纪律作风整改措施思想汇报
2014/10/11 职场文书
法制教育主题班会
2015/08/13 职场文书
JS实现简单控制视频播放倍速的实例代码
2021/04/18 Javascript
redis cluster支持pipeline的实现思路
2021/06/23 Redis