python函数常见关键字分享

作者:荼靡, 时间:2022-06-17 04:31:55 

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)

来源:https://blog.csdn.net/m0_46926492/article/details/124382646

标签:python,函数,常见,关键字
0
投稿

猜你喜欢

  • 名词解释:带你轻松接触13个数据库术语

    2009-05-13 10:32:00
  • Python requests.post()方法中data和json参数的使用方法

    2022-10-10 04:25:45
  • 让插入到 innerHTML 中的 javascript 跑起来

    2008-07-01 13:14:00
  • 全网最新用python实现各种文件类型转换的方法

    2021-02-21 08:57:42
  • python对文档中元素删除,替换操作

    2023-08-30 11:28:20
  • 教你用Python matplotlib库制作简单的动画

    2021-08-20 02:58:49
  • Python中Jieba进行词频统计与关键词提取

    2022-02-03 23:08:50
  • python在不同条件下的输入与输出

    2021-10-20 05:51:37
  • python正则表达式的使用

    2023-07-21 07:42:15
  • asp如何将产生的密码记录并发送给用户?

    2009-11-26 20:50:00
  • 混乱的标记语言XHTML2/HTML5

    2009-07-31 14:27:00
  • python3实现飞机大战

    2023-03-03 00:36:18
  • 使table也能overflow:hidden

    2008-08-18 21:04:00
  • CSS 几条经典的 CSS Tips

    2008-08-20 18:40:00
  • Python matplotlib画图实例之绘制拥有彩条的图表

    2023-01-26 02:06:25
  • MySQL 5数据库连接超时问题

    2009-12-29 10:23:00
  • 初步探究Python程序的执行原理

    2022-11-06 10:30:20
  • 如何使用ASP实现网站的“目录树”管理

    2008-06-13 06:39:00
  • 用CSS设计多种文本框与按钮样式风格

    2007-08-10 13:11:00
  • Python学习之str重要函数

    2022-12-29 05:46:37
  • asp之家 网络编程 m.aspxhome.com