日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

python函數常見關鍵字分享_python

作者:荼靡, ? 更新時間: 2022-06-24 編程語言

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

欄目分類
最近更新