分享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基础教程之python消息摘要算法使用示例
Feb 10 Python
Python开发WebService系列教程之REST,web.py,eurasia,Django
Jun 30 Python
基于Python的身份证号码自动生成程序
Aug 15 Python
pygame学习笔记(4):声音控制
Apr 15 Python
Python2.6版本中实现字典推导 PEP 274(Dict Comprehensions)
Apr 28 Python
Python使用logging模块实现打印log到指定文件的方法
Sep 05 Python
selenium+python自动化测试之环境搭建
Jan 23 Python
django项目用higcharts统计最近七天文章点击量
Aug 17 Python
详解Python可视化神器Yellowbrick使用
Nov 11 Python
Python安装tar.gz格式文件方法详解
Jan 19 Python
Python多线程通信queue队列用法实例分析
Mar 24 Python
python 如何将两个实数矩阵合并为一个复数矩阵
May 19 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
一个更简单的无限级分类菜单代码
2007/01/16 PHP
PHP中echo,print_r与var_dump区别分析
2014/09/29 PHP
Smarty中常用变量操作符汇总
2014/10/27 PHP
ThinkPHP3.2.3数据库设置新特性
2015/03/05 PHP
PHP变量的作用范围实例讲解
2020/12/22 PHP
jQuery总体架构的理解分析
2011/03/07 Javascript
对javascript的一点点认识总结《javascript高级程序设计》读书笔记
2011/11/30 Javascript
extjs两个tbar问题探讨
2013/08/08 Javascript
可以用鼠标拖动的DIV实现思路及代码
2013/10/21 Javascript
JavaScript fontcolor方法入门实例(按照指定的颜色来显示字符串)
2014/10/17 Javascript
Javascript学习指南
2014/12/01 Javascript
AngularJs表单校验功能实例代码
2017/02/09 Javascript
js date 格式化
2017/02/15 Javascript
JS实现按钮控制计时开始和停止功能
2017/07/27 Javascript
webpack 插件html-webpack-plugin的具体使用
2018/04/09 Javascript
Vue表单绑定的实例代码(单选按钮,选择框(单选时,多选时,用 v-for 渲染的动态选项)
2019/05/13 Javascript
动态实现element ui的el-table某列数据不同样式的示例
2021/01/22 Javascript
python使用os模块的os.walk遍历文件夹示例
2014/01/27 Python
理解python中生成器用法
2017/12/20 Python
python 寻找优化使成本函数最小的最优解的方法
2017/12/28 Python
Python使用Pickle模块进行数据保存和读取的讲解
2019/04/09 Python
Python打包模块wheel的使用方法与将python包发布到PyPI的方法详解
2020/02/12 Python
python 写一个水果忍者游戏
2021/01/13 Python
详解基于 Canvas 手撸一个六边形能力图
2019/09/02 HTML / CSS
城野医生官方海外旗舰店:风靡亚洲毛孔收敛水
2018/04/26 全球购物
Manuka Doctor英国官网:真正的麦卢卡蜂蜜和护肤品
2018/10/26 全球购物
通信生自我鉴定
2014/01/18 职场文书
2014年道德讲堂实施方案
2014/03/05 职场文书
企业元宵节主持词
2014/03/25 职场文书
本科毕业生应聘求职信
2014/07/06 职场文书
2014年体育工作总结
2014/11/24 职场文书
优秀党员先进事迹材料
2014/12/18 职场文书
爱心捐款感谢信
2015/01/20 职场文书
党员转正大会主持词
2015/07/02 职场文书
防震减灾主题班会
2015/08/14 职场文书
Apache Pulsar集群搭建部署详细过程
2022/02/12 Servers