欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python函數(shù)和python匿名函數(shù)lambda詳解

 更新時間:2022年09月08日 10:41:21   作者:愛測試的高胖胖  
這篇文章主要介紹了python函數(shù)和python匿名函數(shù)lambda,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

1. python函數(shù)

1.1 函數(shù)的作用

  • 函數(shù)是組織好的,可重復使用的,用來實現(xiàn)單一或相關(guān)聯(lián)功能的代碼段
  • 函數(shù)能提高應(yīng)用的模塊性代碼的重復利用率
  • python 內(nèi)置函數(shù):https://docs.python.org/zh-cn/3.10/library/functions.html

1.2 函數(shù)定義

  • def:函數(shù)定義關(guān)鍵詞
  • function_name:函數(shù)名稱
  • ():參數(shù)列表放置的位置,可以為空
  • parameter_list:可選,指定向函數(shù)中傳遞的參數(shù)
  • comments:可選,為函數(shù)指定注釋
  • function_body:可選,指定函數(shù)體
def function_name([parameter_list]):
    [''' comments ''']
    [function_body]

定義函數(shù)的注意事項:

  • 縮進:python 是通過嚴格的縮進來判斷代碼塊兒

    • 函數(shù)體和注釋相對于 def 關(guān)鍵字必須保持一定的縮進,一般都是 4 個空格
    • pycharm 自動格式化快捷鍵:ctrl+alt+L
  • 定義空函數(shù)

    • 使用 pass 語句占位
    • 寫函數(shù)注釋 comments、

1.3 函數(shù)調(diào)用

  • function_name:函數(shù)名稱
  • parameter_value:可選,指定各個參數(shù)的值
function_name([parameter_value])

1.4 函數(shù)的參數(shù)

1.4.1 參數(shù)的傳遞

  • 形式參數(shù):定義函數(shù)時,函數(shù)名稱后面括號中的參數(shù)
  • 實際參數(shù):調(diào)用函數(shù)時,函數(shù)名稱后面括號中的參數(shù)
# a, b, c 為形式參數(shù)
def demo_func(a, b, c):
    print(a, b, c)

# 1, 2, 3 為實際參數(shù)
demo_func(1, 2, 3)

1.4.2 參數(shù)類型

1.4.2.1 位置參數(shù)(必備參數(shù))

  • 數(shù)量必須與定義時一致
  • 位置必須與定義時一致
def demo_func(a, b, c):
    print(a, b, c)

# 1 賦值給 a, 2 賦值給 b, 3 賦值給 c
demo_func(1, 2, 3)

1.4.2.2 關(guān)鍵字參數(shù)

  • 使用形式參數(shù)的名字確定輸入的參數(shù)值
  • 不需要與形式參數(shù)的位置完全一致
def demo_func(a, b, c):
    print(a, b, c)

demo_func(a=1, b=2, c=3)

1.4.2.3可變參數(shù)

  • 可變參數(shù)也稱為不定長參數(shù)
  • 傳入函數(shù)中實際參數(shù)可以是任意多個
  • 常見形式
    • *args
    • **kwargs
1.4.2.3.1 *args
  • 接收任意多個實際參數(shù),并將其放到一個元組
  • 使用已經(jīng)存在的列表元組作為函數(shù)的可變參數(shù),可以在列表的名稱前加*
def print_language(*args):
    print(args)

print_language("python", "java", "php", "go")

params = ["python", "java", "php", "go"]
print_language(*params)
1.4.2.3.2 **kwargs
  • 接收任意多個類似關(guān)鍵字參數(shù)一樣顯式賦值的實際參數(shù),并將其放到一個字典
  • 使用已經(jīng)存在字典作為函數(shù)的可變參數(shù),可以在字典的名稱前加**
def print_info(**kwargs):
    print(kwargs)

print_info(Tom=18, Jim=20, Lily=12)

params = {'Tom':18, 'Jim':20, 'Lily':12}
print_language(**params)

1.4.5 為參數(shù)設(shè)置默認值

  • 定義函數(shù)時可以指定形式參數(shù)的默認值
  • 指定默認值的形式參數(shù)必須放在所有參數(shù)的最后,否則會產(chǎn)生語法錯誤
  • param=default_value:可選,指定參數(shù)并且為該參數(shù)設(shè)置默認值為 default_value
  • 設(shè)置默認值必須要使用不可用對象,可變對象不可以用,如:列表,字典。
def function_name(..., [param=default_value]):
    [function_body]

1.5 函數(shù)返回值

value:可選,指定要返回的值

def function_name([parameter_list]):
    [''' comments ''']
    [function_body]
    return [value]

2. python lambda表達式

2.1 匿名函數(shù)

  • 沒有名字的函數(shù)
  • 用 lambda 表達式創(chuàng)建匿名函數(shù)

2.2 使用場景

  • 需要一個函數(shù),但是又不想費神去命名這個函數(shù)
  • 通常在這個函數(shù)只使用一次的場景下
  • 可以指定短小的回調(diào)函數(shù)

2.3 語法

  • result:調(diào)用 lambda 表達式
  • [arg1 [, arg2, …. , argn]]:可選,指定要傳遞的參數(shù)列表
  • expression:必選,指定一個實現(xiàn)具體功能的表達式
result = lambda [arg1 [, arg2, .... , argn]]: expression

2.4 實例

L=[('b',2),('a',1),('c',3),('d',4)]

# 2、利用參數(shù) cmp 排序
sorted(L, cmp=lambda x,y:cmp(x[1],y[1]))
# 結(jié)果:
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
# 3、利用參數(shù) key 排序
sorted(L, key=lambda x:x[1])
# 結(jié)果:
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]

到此這篇關(guān)于python函數(shù)和python匿名函數(shù)lambda的文章就介紹到這了,更多相關(guān)python匿名函數(shù)lambda內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python3基礎(chǔ)之基本運算符概述

    Python3基礎(chǔ)之基本運算符概述

    這篇文章主要介紹了Python3基礎(chǔ)的基本運算符,非常重要的知識點,需要的朋友可以參考下
    2014-08-08
  • 淺談如何使用Python控制手機(二)

    淺談如何使用Python控制手機(二)

    這篇文章主要為大家介紹了如何使用Python控制手機,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • 對python中的xlsxwriter庫簡單分析

    對python中的xlsxwriter庫簡單分析

    今天小編就為大家分享一篇對python中的xlsxwriter庫簡單分析,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • 使用Python實現(xiàn)為PDF文件添加圖章

    使用Python實現(xiàn)為PDF文件添加圖章

    在日常工作中,我們經(jīng)常需要給PDF文檔添加一些標識,比如公司的圖章或水印圖章,所以本文就來為大家詳細介紹一下如何使用Python實現(xiàn)為PDF文件添加圖章,需要的可以參考下
    2023-11-11
  • python實現(xiàn)圖像最近鄰插值

    python實現(xiàn)圖像最近鄰插值

    這篇文章主要介紹了python實現(xiàn)圖像最近鄰插值,圖像插值技術(shù)即Nearest?Neighbour?Interpolate是圖像超分辨率領(lǐng)域的重要研究方法之一,其目的是根據(jù)已有的低分辨率圖像,獲得高分辨率圖像,下面來看看文章具體的敘述,需要的朋友可以參考一下
    2022-03-03
  • Python使用collections模塊實現(xiàn)擴展數(shù)據(jù)類

    Python使用collections模塊實現(xiàn)擴展數(shù)據(jù)類

    Python?標準庫提供了一個?collections?模塊,里面提供了很多的數(shù)據(jù)類,在工作中使用這些類能夠簡化我們的開發(fā),本文就來看看collections是如何實現(xiàn)擴展數(shù)據(jù)類的吧
    2023-06-06
  • Python中的random函數(shù)實例詳解

    Python中的random函數(shù)實例詳解

    random模塊提供生成偽隨機數(shù)的函數(shù),在使用時需要導入random模塊,這篇文章主要介紹了Python中的random函數(shù),本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-02-02
  • flask session組件的使用示例

    flask session組件的使用示例

    這篇文章主要介紹了flask session組件的使用示例,詳細介紹內(nèi)置session以及第三方session組件的使用方法以及處理機制,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12
  • Pytorch實現(xiàn)將模型的所有參數(shù)的梯度清0

    Pytorch實現(xiàn)將模型的所有參數(shù)的梯度清0

    這篇文章主要介紹了Pytorch實現(xiàn)將模型的所有參數(shù)的梯度清0,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Python中文糾錯的簡單實現(xiàn)

    Python中文糾錯的簡單實現(xiàn)

    這篇文章主要是用 Python 實現(xiàn)了簡單的中文分詞的同音字糾錯,目前的案例中只允許錯一個字,感興趣的小伙伴們可以參考一下
    2021-07-07

最新評論