老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)

普通函數(shù)、參數(shù)、匿名函數(shù)、高階函數(shù)、遞歸函數(shù)、閉包、裝飾器

函數(shù)

定義

# 定義函數(shù)
def fn():
   print("這是函數(shù)內(nèi)部")

# 調(diào)用
fn()
fn()

# 區(qū)分
fn: 這是真正意義上的函數(shù)本身
fn(): 這是調(diào)用函數(shù)

參數(shù)

形參 實(shí)參

函數(shù)參數(shù)可有可無,要看具體使用

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊、網(wǎng)絡(luò)空間、營銷軟件、網(wǎng)站建設(shè)、通榆網(wǎng)站維護(hù)、網(wǎng)站推廣。

形參是定義函數(shù)的參數(shù)

實(shí)參就是調(diào)用函數(shù)時(shí)需要傳遞的參數(shù),函數(shù)有多少個(gè)形參就要傳遞多少個(gè)實(shí)參

形參的 默認(rèn)值參數(shù)

形參里面可以設(shè)置默認(rèn)值參數(shù)

def fn(a,b=1)
	print(a+b)

fn(1) # 正確 結(jié)果: 2
fn(1,2) # 正確 結(jié)果: 3

參數(shù)的傳遞方式

1.位置參數(shù) 
# 根據(jù)位置傳遞參數(shù),缺點(diǎn)需要記住每一個(gè)參數(shù)的位置

2.關(guān)鍵字參數(shù)
def fn(a,b,c):
    pass
fn(b=1,a=2,c=3)

可變參數(shù)

*args: 可接受任意的位置參數(shù),并保存在一個(gè)元組中
def fn(*args):
    pass
fn(1,2,3,4,5,6,7)

**kwargs: 可接受任意的關(guān)鍵字參數(shù),并保存在一個(gè)字典中
def fn1(**kwargs):
    pass
fn(a=1,n=2,c=3,bb=1)

# 可接受任意參數(shù)
def fn(*args,**kwargs):
    pass

返回值

函數(shù)執(zhí)行完之后一般都有結(jié)果,用return關(guān)鍵字來返回值

def fn():
    return 1

print(fn()) # 1
# fn = 返回值

如果函數(shù)中不屑返回值默認(rèn)是None
def fn1():
    pass

print(fn1()) # None

高級用法

1.函數(shù)可以被引用

? 將一個(gè)函數(shù)賦值給另一個(gè)變量,現(xiàn)在改變量相當(dāng)于那個(gè)函數(shù)

2.函數(shù)可以作文參數(shù)傳入另一個(gè)函數(shù)

def fn():
    print('我是fn')
def fn2(x):  
    x()  # x() == fn()
fn2(fn)  # fn -> x

3.可以將函數(shù)作為返回值

def fn():
    print("這是fn")
    return fn1
def fn1():
    print("這是fn1")
fn()() # fn() 返回fn1相當(dāng)于fn1() 打印'這是fn1'

4.函數(shù)可以是容器中的元素

def fn():
    print('這是fn')
list1 = [1,2,'hello',fn]
list1[3]() # 相當(dāng)于調(diào)用fn,打印'這是fn'

匿名函數(shù)lambda

匿名函數(shù): 沒有名字的函數(shù)

語法: lambda 參數(shù)列表:返回值(表達(dá)式)

lambda x : x+1 # 這就是一個(gè)匿名函數(shù)
匿名函數(shù)可以賦值給變量
fn = lambda x : x+1
等價(jià)于
def fn(x):
    return x+1

高階函數(shù)

高階函數(shù): 就是函數(shù)作為參數(shù)的函數(shù)

普通函數(shù):
    abs() # 求數(shù)字的絕對值
    round() # 四舍五入,但是準(zhǔn)換為二進(jìn)制的時(shí)候精度缺失,實(shí)際是 奇數(shù)時(shí)四舍五入,偶數(shù)5舍大于5入
    
定義一個(gè)高級函數(shù):
    def func(a,b,fn):
        return fn(a)+fn(b)
    print(func(3,-5,abs)) # 8
    print(func(3.4,4.5,round)) # 7 
高階函數(shù):
    1.map()
    規(guī)則: 必須只有一個(gè)形參
    語法: map(fn,list)
    # 將fn作用到序列中每一個(gè)元素中,結(jié)果返回一個(gè)迭代器
        list1 = [1,2,3,4]
        print(list(map(lambda x:x*x,list1))) # [1, 4, 9, 16]
        # 注意原列表不會改變
	2.filter()
	語法:filter(fn,list)
	# 將fn作用到序列中每一個(gè)元素中,結(jié)果返回一個(gè)迭代器
	# 用域過濾序列,過濾掉不符合的元素
		list2 = [i for i in range(1,11)]
		print(list(filter(lambda x:x%2==0,list2))) # [2, 4, 6, 8, 10]
	3.sorted()
	語法:sorted(list,key=)
	# 將序列進(jìn)行排序,返回一個(gè)序列
		# 以成績排序降序
		list3 = ["小李子=150","小紅=99","小明=79","小張=89","小川=92"]
		print(sorted(list3,key=lambda x:int(x.split("=")[1])))
		# ['小明=79', '小張=89', '小川=92', '小紅=99', '小李子=150']
	4.reduce() # 該函數(shù)需要導(dǎo)入functools
	語法:reduce(fn,list)
	# 把序列中的元素做累計(jì)計(jì)算,結(jié)果返回一個(gè)序列
		# 計(jì)算從1加到10
		from functools import reduce
		list4 = [i for i in range(1,11)]
		print(reduce(lambda x,y:x+y,list4)) # 55

遞歸函數(shù)

如果一個(gè)函數(shù)在自己的內(nèi)部調(diào)用了他自己,就叫做遞歸

先進(jìn)后出,后進(jìn)先出

使用遞歸必須設(shè)置出口

# 設(shè)計(jì)一個(gè)階乘
def fn(x):
    if x == 1 : # 1的階乘結(jié)果等于1
        return 1
    return x*fn(x-1) # 如果不是1那么就等于這個(gè)數(shù)乘這個(gè)數(shù)減一的階乘

# 例如5的階乘推導(dǎo)
f(5) = 5 * f(4)
     = 5 * 4 * f(3)
     = 5 * 4 * 3 * f(2)
     = 5 * 4 * 3 * 2 * f(1)
     = 5 * 4 * 3 * 2 * 1
        

閉包

閉包:如果在一個(gè)內(nèi)部函數(shù),對在外作用域(但不是全局作用域)的變量進(jìn)行了引用,呢么內(nèi)部函數(shù)就叫做閉包

是一個(gè)內(nèi)部函數(shù)

使用了外部環(huán)境(非全局)

閉包 = 內(nèi)部函數(shù) + 定義函數(shù)的環(huán)境

裝飾器

作用: 在不修改原來函數(shù)的情況下, 拓展功能

開放封閉原則:

? 開放: 對于拓展功能進(jìn)行開放

? 封閉: 不可修改原函數(shù)

def new_fn(func):
    def inner(*args,**kwargs):
        ...
        res = func(*args,**kwargs)
        ...
        return res
    reutrn inner

@new_fn # a = new_fn(a)
def a():
    pass
a() -> new_fn(a)() -> inner() 中間有閉包環(huán)節(jié)

網(wǎng)頁題目:普通函數(shù)、參數(shù)、匿名函數(shù)、高階函數(shù)、遞歸函數(shù)、閉包、裝飾器
文章網(wǎng)址:http://www.xueling.net.cn/article/dsogeeh.html

其他資訊

在線咨詢
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP
主站蜘蛛池模板: 99精品久久久久久久免费看蜜臀 | 国产区三 | 夜夜高潮夜夜爽精品欧美做爰 | 2020最新久久久视精品爱 | 涩涩网址 | 粉嫩饱饱鱼一线天在线观看 | 啦啦啦中文在线观看日本 | 贪婪欲望岛在线观看 | 99久久精品久久久久久动态片 | 少妇xxxxx性开放中出 | 加山夏子av | 婷婷亚洲影院 | 久久95 | 日本午夜啪啪 | 国产pron | 伊伊人成亚洲综合人网7777 | 国产精品一区二区在线观看网站 | 色综合天天综合网国产成人综合天 | 精品国产香蕉在线观看 | 少妇av射精精品蜜桃专区 | 久久久久久激情 | 蜜臀AV综合网 | 又大又长粗又爽又黄少妇视频 | 日韩资源在线观看 | 性一交一无一伦一精一品 | 亚洲精品综合在线影院 | 国产偷ⅴ国产偷v精品 | 精品无码一区二区三区亚洲桃色 | 日本永久免费a∨在线视频 91精品欧美一区二区三区 | 国产91区精品福利在线社区 | 亚洲无人区码一码二码三码的特点 | 久久网址 | 99视频精品在线 | 亚洲一区二区三区在线视频观看 | 九色porny丨国产首页在线 | 乱人伦人妻精品一区二区 | 野花社区www在线视频 | 欧美国产亚洲精品久久久8v | 亚洲av日韩av激情亚洲 | 嘿咻嘿咻免费区在线观看 | 亚洲精品TV久久久久久久久J |