最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python中函數(shù)的多種格式和使用實(shí)例及小技巧

 更新時(shí)間:2015年04月13日 08:47:08   投稿:junjie  
這篇文章主要介紹了Python中函數(shù)的多種格式和使用實(shí)例及小技巧,本文講解了普通格式、帶收集位置參數(shù)的函數(shù)、帶收集關(guān)鍵字參數(shù)的函數(shù)、函數(shù)特殊用法、內(nèi)嵌函數(shù)和閉包等內(nèi)容,需要的朋友可以參考下

這里先解釋一下幾個(gè)概念
- 位置參數(shù):按位置設(shè)置的參數(shù),隱式用元組保存對(duì)應(yīng)形參.平時(shí)我們用的大多數(shù)是按位置傳參.比如有函數(shù)def func(a,b,c),調(diào)用func(1,2,3).即a=1,b=2,c=3
- 關(guān)鍵字參數(shù):可以通過(guò)關(guān)鍵字設(shè)置參數(shù),不用關(guān)心參數(shù)位置,隱式用字典保存形參.比如有函數(shù)def func(a,b,c),調(diào)用func(b=1,c=2,a=3),即a=3,b=1,c=2

普通格式

復(fù)制代碼 代碼如下:

def func(opt_args):
    ...
    return value

帶收集位置參數(shù)的函數(shù)

格式如下

復(fù)制代碼 代碼如下:

def func(*params):
    ...
    return value

用法

使用函數(shù)時(shí),不用限制傳參的個(gè)數(shù),*params會(huì)自動(dòng)收集傳入的參數(shù)作為一個(gè)元組.

實(shí)例

復(fù)制代碼 代碼如下:

def  func(*params):
    print params

a = [1,2,3,4]
b = 'hello'
c = 3
func(a, b, c)

輸出

復(fù)制代碼 代碼如下:

([1, 2, 3, 4], ‘hello', 3)

帶收集關(guān)鍵字參數(shù)的函數(shù)

格式如下

復(fù)制代碼 代碼如下:

def func(**params):
    ...
    return value

用法
按關(guān)鍵字傳參時(shí),**params會(huì)自動(dòng)收集傳入的參數(shù)作為一個(gè)字典.

實(shí)例

復(fù)制代碼 代碼如下:

def  func(**params):
    print params
func(a=1, b=2, c=3)

輸出
復(fù)制代碼 代碼如下:

{‘a(chǎn)': 1, ‘c': 3, ‘b': 2}

函數(shù)特殊用法

默認(rèn)參數(shù)

格式

復(fù)制代碼 代碼如下:

def func(a = 1, b = 2)

等號(hào)(=)號(hào)是默認(rèn)值,調(diào)用函數(shù)時(shí)可以不用傳參給默認(rèn)參數(shù).
實(shí)例
復(fù)制代碼 代碼如下:

def  func(a = 1, b = 2):
    print a, b 
func(a=3)

輸出
復(fù)制代碼 代碼如下:

3 2

函數(shù)可以返回多個(gè)值

格式

復(fù)制代碼 代碼如下:

return a, b, c

實(shí)例
復(fù)制代碼 代碼如下:

def  func(a = 1, b = 2):
    return a, b

print func(a=3)


輸出
復(fù)制代碼 代碼如下:

(3, 2)

內(nèi)嵌函數(shù)和閉包

格式

復(fù)制代碼 代碼如下:

def foo()    #外部函數(shù)
    def bar()    #內(nèi)嵌函數(shù)
        ....
    ....

如果內(nèi)嵌函數(shù)引用了外部函數(shù)的變量(包括外部函數(shù)參數(shù)),這個(gè)引用的變量稱為自由變量, 那么稱這個(gè)內(nèi)嵌函數(shù)是閉包.再來(lái)看看專業(yè)的解釋:閉包(Closure)是詞法閉包(Lexical Closure)的簡(jiǎn)稱,是引用了自由變量的函數(shù)。這個(gè)被引用的自由變量將和這個(gè)函數(shù)一同存在,即使已經(jīng)離開(kāi)了創(chuàng)造它的環(huán)境也不例外。

實(shí)例

復(fù)制代碼 代碼如下:

def foo(a, b):
    x = 4
    def bar():
        return x * a + b;
    return bar

f1= foo(1, 2)
f2= foo(2, 3)

print f1(), f2()


輸出
復(fù)制代碼 代碼如下:

6 11

傳遞函數(shù)

Python一切皆對(duì)象,函數(shù)這一語(yǔ)法結(jié)構(gòu)也是一個(gè)對(duì)象, 可以將函數(shù)名作為參數(shù)傳遞
格式

復(fù)制代碼 代碼如下:

def bar(*param1, **param2):
    ....

def foo(bar, *param1, **param2):
    bar(*param1, **param2)


實(shí)例
復(fù)制代碼 代碼如下:

def bar(*param1, **param2):
    print param1
    print param2

def foo(bar, *param1, **param2):
    bar(*param1, **param2)

foo(bar,  1, 2, 3,  a = 111, b = 222, c = 333)


輸出
復(fù)制代碼 代碼如下:

(1, 2, 3)
{‘a(chǎn)': 111, ‘c': 333, ‘b': 222}

匿名函數(shù)與lambda

lambda語(yǔ)法可以創(chuàng)建一個(gè)匿名的函數(shù),主要作用是簡(jiǎn)化書寫,是一種語(yǔ)法糖.
- 格式

復(fù)制代碼 代碼如下:

lambda [arg1[, arg2, … argN]] : expression

實(shí)例
復(fù)制代碼 代碼如下:

def foo(x, y):
    return x + y
print  "call foo function, result is: ", foo(3, 4)

bar = lambda x = 2, y = 3 : x + y
print  "call lambda fucntion, result is:", bar(3,4)


輸出
復(fù)制代碼 代碼如下:

call foo function, result is: 7
call lambda fucntion, result is: 7

相關(guān)文章

  • Python流程控制if條件選擇與for循環(huán)

    Python流程控制if條件選擇與for循環(huán)

    這篇文章主要介紹了Python流程控制if條件選擇與for循環(huán),文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-07-07
  • Python3一行代碼實(shí)現(xiàn)圖片文字識(shí)別的示例

    Python3一行代碼實(shí)現(xiàn)圖片文字識(shí)別的示例

    本篇文章主要介紹了Python3一行代碼實(shí)現(xiàn)圖片文字識(shí)別的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-01-01
  • Python JWT認(rèn)證與pyjwt包詳細(xì)介紹

    Python JWT認(rèn)證與pyjwt包詳細(xì)介紹

    JWT的聲明一般被用來(lái)在身份提供者和服務(wù)提供者間傳遞被認(rèn)證的用戶身份信息,以便于從資源服務(wù)器獲取資源,也增加一些額外的其它業(yè)務(wù)邏輯所必須的聲明信息,該token也可直接被用于認(rèn)證,也可被加密,這篇文章主要介紹了Python JWT認(rèn)證與pyjwt包簡(jiǎn)介,需要的朋友可以參考下
    2023-05-05
  • Python實(shí)現(xiàn)按當(dāng)前日期(年、月、日)創(chuàng)建多級(jí)目錄的方法

    Python實(shí)現(xiàn)按當(dāng)前日期(年、月、日)創(chuàng)建多級(jí)目錄的方法

    這篇文章主要介紹了Python 按當(dāng)前日期(年、月、日)創(chuàng)建多級(jí)目錄的方法,實(shí)現(xiàn)代碼很簡(jiǎn)單,需要的朋友可以參考下
    2018-04-04
  • Python大數(shù)據(jù)用Numpy Array的原因解讀

    Python大數(shù)據(jù)用Numpy Array的原因解讀

    一個(gè)Numpy數(shù)組由許多值組成,所有值的類型是相同的,Numpy 是Python科學(xué)計(jì)算的一個(gè)核心模塊,本文重點(diǎn)給大家介紹Python大數(shù)據(jù)Numpy Array的相關(guān)知識(shí),感興趣的朋友一起看看吧
    2022-02-02
  • Python調(diào)用DeepSeek?API的案例詳細(xì)教程

    Python調(diào)用DeepSeek?API的案例詳細(xì)教程

    這篇文章主要為大家詳細(xì)介紹了以?Python?為例的調(diào)用?DeepSeek?API?的小白入門級(jí)詳細(xì)教程,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解下
    2025-02-02
  • Python嵌套循環(huán)的使用

    Python嵌套循環(huán)的使用

    本文主要介紹了Python嵌套循環(huán)的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧<BR>
    2023-02-02
  • Python箱型圖處理離群點(diǎn)的例子

    Python箱型圖處理離群點(diǎn)的例子

    今天小編就為大家分享一篇Python箱型圖處理離群點(diǎn)的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-12-12
  • python實(shí)現(xiàn)一次創(chuàng)建多級(jí)目錄的方法

    python實(shí)現(xiàn)一次創(chuàng)建多級(jí)目錄的方法

    這篇文章主要介紹了python實(shí)現(xiàn)一次創(chuàng)建多級(jí)目錄的方法,涉及Python中os模塊makedirs方法的使用技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下
    2015-05-05
  • 面向初學(xué)者的Python編輯器Mu

    面向初學(xué)者的Python編輯器Mu

    今天小編就為大家分享一篇關(guān)于一個(gè)面向初學(xué)者的Python編輯器Mu,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-10-10

最新評(píng)論

万全县| 加查县| 洛南县| 通化市| 理塘县| 察哈| 太和县| 峡江县| 甘洛县| 新郑市| 尤溪县| 宣恩县| 抚顺县| 清原| 保山市| 韩城市| 通城县| 孝义市| 宾川县| 寻乌县| 阳原县| 新乡市| 三门峡市| 呼伦贝尔市| 永和县| 绥化市| 京山县| 吴忠市| 嘉荫县| 河源市| 六枝特区| 许昌县| 拉萨市| 龙井市| 钦州市| 贡觉县| 哈密市| 泰安市| 西华县| 申扎县| 宝兴县|