分享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 命令行非阻塞输入的小例子
Sep 27 Python
python根据给定文件返回文件名和扩展名的方法
Mar 27 Python
python使用calendar输出指定年份全年日历的方法
Apr 04 Python
HTML中使用python屏蔽一些基本功能的方法
Jul 07 Python
手把手教你如何安装Pycharm(详细图文教程)
Nov 28 Python
Python实现二叉树的常见遍历操作总结【7种方法】
Mar 06 Python
Django框架模板文件使用及模板文件加载顺序分析
May 23 Python
对Python中class和instance以及self的用法详解
Jun 26 Python
python实现微信小程序用户登录、模板推送
Aug 28 Python
Python 50行爬虫抓取并处理图灵书目过程详解
Sep 20 Python
有关Tensorflow梯度下降常用的优化方法分享
Feb 04 Python
Python中的socket网络模块介绍
Jul 23 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
超强分页类2.0发布,支持自定义风格,默认4种显示模式
2007/01/02 PHP
php中实现xml与mysql数据相互转换的方法
2014/12/25 PHP
一款js和css代码压缩工具[附JAVA环境配置方法]
2010/04/16 Javascript
javascript 学习笔记(onchange等)
2010/11/14 Javascript
原生JS绑定滑轮滚动事件兼容常见浏览器
2014/06/30 Javascript
NodeJS中Buffer模块详解
2015/01/07 NodeJs
jQuery+css实现的切换图片功能代码
2016/01/27 Javascript
前端学习笔记style,currentStyle,getComputedStyle的用法与区别
2016/05/28 Javascript
Bootstrap编写一个兼容主流浏览器的受众巨幕式风格页面
2016/07/01 Javascript
js获取Get值的方法
2016/09/29 Javascript
完美解决UI-Grid表格元素中多个空格显示为一个空格的问题
2017/04/25 Javascript
webpack+vue中使用别名路径引用静态图片地址
2017/11/20 Javascript
在angularJs中进行数据遍历的2种方法
2018/10/08 Javascript
javascript设计模式 ? 命令模式原理与用法实例分析
2020/04/20 Javascript
[01:32:10]NAVI vs VG Supermajor 败者组 BO3 第一场 6.5
2018/06/06 DOTA
python自定义类并使用的方法
2015/05/07 Python
Python基于list的append和pop方法实现堆栈与队列功能示例
2017/07/24 Python
Python实现的特征提取操作示例
2018/12/03 Python
python3+selenium实现qq邮箱登陆并发送邮件功能
2019/01/23 Python
python基于gevent实现并发下载器代码实例
2019/11/01 Python
django admin管理工具自定义时间区间筛选器DateRangeFilter介绍
2020/05/19 Python
pandas.DataFrame.drop_duplicates 用法介绍
2020/07/06 Python
传统HTML页面实现模块化加载的方法
2018/10/15 HTML / CSS
HTML中fieldset标签概述及使用方法
2013/02/01 HTML / CSS
Alba Moda瑞士网上商店:独家意大利时尚女装销售
2016/11/28 全球购物
IMPORT的选项IGNORE有什么作用?缺省是什么设置?
2015/09/17 面试题
为什么UNION ALL比UNION快
2016/03/17 面试题
linux比较文件内容的命令是什么
2015/09/23 面试题
学校学雷锋活动总结
2014/06/26 职场文书
2014年小学国庆节活动方案
2014/09/16 职场文书
教师考核评语大全
2014/12/31 职场文书
部门经理助理岗位职责
2015/04/13 职场文书
学校教学工作总结2015
2015/05/19 职场文书
2015质检员个人年终工作总结
2015/10/23 职场文书
《我的美好婚事》动画化决定纪念插画与先导PV公开
2022/04/06 日漫
Apache Hudi 加速传统的批处理模式
2022/04/24 Servers