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

淺談function(函數(shù))中的動態(tài)參數(shù)

 更新時間:2017年04月30日 07:44:23   投稿:jingxian  
下面小編就為大家?guī)硪黄獪\談function(函數(shù))中的動態(tài)參數(shù)。小編覺得聽不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

我們可向函數(shù)傳遞動態(tài)參數(shù),*args,**kwargs,首先我們來看*args,示例如下:

1.show(*args)

def show(*args):
print(args,type(args))
#以元組的形式向列表傳遞參數(shù)
show(11,22,33,44,55,66)

首先我們定義了一個函數(shù),函數(shù)show(*args)里面的*args可以接收動態(tài)參數(shù),這里我們接收一個元組形式的參數(shù),我們可以向show()里面?zhèn)鬟f很多參數(shù),函數(shù)默認把這些參數(shù)作為一個元組進行接收。

2.show(**args)

def show(**kwargs):
print(kwargs,type(kwargs))
#以字典的形式向函數(shù)傳遞參數(shù)
show(k1=80,k2="alex")

由上面代碼可以看出,**kwargs是以字典的形式接收參數(shù)的,我們知道,字典是由鍵-值對組成的,key-value,因而我們必須向里面?zhèn)魅腈I-值對的參數(shù)形式才能夠接收,因此我們在里面?zhèn)魅肓藚?shù)k1=80,k2="alex".這樣生成了一個字典,從代碼可以看出來。

3.show(k,*args)

def show(k,*args):
print(k,type(k))
print(args,type(args))
show([11,22],33,44,55,88)

運行結(jié)果如下:

[11, 22] <class 'list'>

(33, 44, 55, 88) <class 'tuple'>

由上面代碼可以看出,我們向函數(shù)定義了兩個參數(shù),一個是k,一個是*args,我們知道,形參k只能接收一個對象參數(shù),*args可以接收多個參數(shù)并且放在一個元組中,下面我們向函數(shù)傳遞了多個參數(shù),看是如何接收的。從運行結(jié)果(1)可以看出,形參k接收了參數(shù)[11,22];而后面輸入的值傳遞給了*args,并在存放在一個列表中。

4.show(*args,**kwargs)

只要函數(shù)有這兩個參數(shù)那么,可以傳遞任何形式的實參進來,因為可以接收任意形式的參數(shù),但是我們知道,字典必須是由鍵值對組成,傳遞的參數(shù)要滿足key=value的格式,否則會報錯。這點一定要記得,Python中默認給字典傳遞參數(shù)的方法就是鍵-值對。

def show(*args,**kwargs):
print(args,type(args))
print(kwargs,type(kwargs))

show(123,"alex",666,alex="sb",nanyang="degnzhou")

運行結(jié)果如下:

(123, 'alex', 666) <class 'tuple'>

{'nanyang': 'degnzhou', 'alex': 'sb'} <class 'dict'>

我們可以看到,前面的元素被放到了一個元組tuple中,后面的元素被放到了一個字典dict中,但是我們一定要記得,*args,一定要在**kwargs前面,不然會報錯,順序一定是單個參數(shù),動態(tài)元組,動態(tài)字典方式。

下面我們來看一個實例:

def show(*args,**kwargs):
print(args,type(args))
print(kwargs,type(kwargs))

l = [11,22,33,44]
d = {"n1":88,"alex":"sb"}
#我們想把列表l傳遞給形參*args,把字典傳遞給形參**kwargs,看下面方式是否可以
show(l,d) (1)

#如果向?qū)崿F(xiàn)上面功能,要進行表示,指定把哪個參數(shù)傳遞給形參*args,另一個參數(shù)傳遞給形參××kwargs

show(*l,**d) (2)

上面代碼中,我們在(1)處直接調(diào)用參數(shù),但是得到的結(jié)果不是我們想要的,我們想要把參數(shù)以列表或者字典的形式傳給對應(yīng)的形參,那么必須標明是傳遞給哪個參數(shù)的,相當于默認參數(shù)一樣。否則只會傳遞給第一個參數(shù)*args,把列表和字典都放在同一個元組中。上面代碼的運行結(jié)果如下:

運行結(jié)果:

([11, 22, 33, 44], {'alex': 'sb', 'n1': 88}) <class 'tuple'>
{} <class 'dict'>
(11, 22, 33, 44) <class 'tuple'>
{'alex': 'sb', 'n1': 88} <class 'dict'>

5.字符串中參數(shù)的情況

(1)字符串格式化,向字符串中傳遞列表參數(shù)

s1 = "{0} is {1}."
result = s1.format("alex","sb")(1)
l = ["alex","sb"] (2)
res = s1.format(*l)
print(result)
print(res)

上面,我們有兩種向字符串傳遞參數(shù)的方法,方法(1)中我們直接按順序傳遞參數(shù)給s1,在方法(2)中我們指定一個列表,但是使用*args的形式給字符串s1傳遞參數(shù)。列表是有序的。

(2)向字符串中傳遞字典形式的參數(shù)

s1 = "{name} is {acter}."
result = s1.format(name="alex",acter="sb")
d = {"name":"alex","acter":"sb"}
#向列表中傳遞字典形式的參數(shù)
res = s1.format(**d)
print(result)
print(res)

在上面代碼中,我們向字符串中傳遞了一個字典形式的參數(shù),我們知道字典的格式,在傳遞給字符串的時候要指定我們傳遞的參數(shù)是一個字典,

因而要使用**d格式,告訴Python。

6.lambda表達式

lambda簡單表達式就是函數(shù)的簡單表示形式:

>>> func = lambda a:a+1
  >>> ret = func(99)
  >>> print(ret)
  100

在上面形式中,func是定義一個函數(shù),lambda表示的是我們定義了一個lambad表達式,其中a代表的形參,冒號(:)后面的a+1代表表達式,對

函數(shù)進行什么樣的處理,然后把結(jié)果返回給ret這個變量,調(diào)用它的變量。省略了return。

上面形式參數(shù)可以有多個,冒號前面是參數(shù),可以多個;冒號后面是函數(shù)體。

lambda表達式創(chuàng)建了形參a;函數(shù)內(nèi)容a+1,并把結(jié)果返回給調(diào)用函數(shù)的變量。

以上這篇淺談function(函數(shù))中的動態(tài)參數(shù)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 基于Python實現(xiàn)一個PDF特殊字體提取工具

    基于Python實現(xiàn)一個PDF特殊字體提取工具

    在PDF文檔處理場景中,我們常常需要針對特定格式的文本內(nèi)容進行提取分析,本文介紹的"PDF特殊字體提取器"是一款基于Python開發(fā)的桌面應(yīng)用程序感興趣的小伙伴跟著小編一起來看看吧
    2025-03-03
  • python教程之用py2exe將PY文件轉(zhuǎn)成EXE文件

    python教程之用py2exe將PY文件轉(zhuǎn)成EXE文件

    py2exe是一個將python腳本轉(zhuǎn)換成windows上的可獨立執(zhí)行的可執(zhí)行程序(*.exe)的工具,這樣,你就可以不用裝python而在windows系統(tǒng)上運行這個可執(zhí)行程序。
    2014-06-06
  • Pytorch中view函數(shù)實例講解

    Pytorch中view函數(shù)實例講解

    這篇文章主要給大家介紹了關(guān)于Pytorch中view函數(shù)的相關(guān)資料,PyTorch中的.view()函數(shù)是一個用于改變張量形狀的方法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-09-09
  • Python使用GeekConcurrent實現(xiàn)量化編程

    Python使用GeekConcurrent實現(xiàn)量化編程

    這篇文章主要為大家詳細介紹了Python中的協(xié)程并發(fā)編程以及如何使用GeekConcurrent庫來實現(xiàn)面向量化編程,感興趣的小伙伴可以了解一下
    2025-02-02
  • 安裝python3的時候就是輸入python3死活沒有反應(yīng)的解決方法

    安裝python3的時候就是輸入python3死活沒有反應(yīng)的解決方法

    下面小編就為大家分享一篇安裝python3的時候就是輸入python3死活沒有反應(yīng)的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • python OpenCV學(xué)習筆記

    python OpenCV學(xué)習筆記

    這篇文章主要介紹了python OpenCV的相關(guān)資料,幫助大家更好的理解和學(xué)習使用python的opencv,感興趣的朋友可以了解下
    2021-03-03
  • Python模塊學(xué)習之struct模塊詳解

    Python模塊學(xué)習之struct模塊詳解

    這篇文章主要介紹了Python模塊學(xué)習之struct模塊詳解,該模塊作用是完成Python數(shù)值和C語言結(jié)構(gòu)體的Python字符串形式間的轉(zhuǎn)換,這可以用于處理存儲在文件中或從網(wǎng)絡(luò)連接中存儲的二進制數(shù)據(jù),以及其他數(shù)據(jù)源,需要的朋友可以參考下
    2023-07-07
  • python 打印直角三角形,等邊三角形,菱形,正方形的代碼

    python 打印直角三角形,等邊三角形,菱形,正方形的代碼

    這篇文章主要介紹了python 打印直角三角形,等邊三角形,菱形,正方形的代碼,需要的朋友可以參考下
    2017-11-11
  • python爬蟲之教你如何爬取地理數(shù)據(jù)

    python爬蟲之教你如何爬取地理數(shù)據(jù)

    這篇文章主要介紹了python爬蟲之教你如何爬取地理數(shù)據(jù),文中有非常詳細的代碼示例,對正在學(xué)習python的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-04-04
  • 在Windows中設(shè)置Python環(huán)境變量的實例講解

    在Windows中設(shè)置Python環(huán)境變量的實例講解

    下面小編就為大家分享一篇在Windows中設(shè)置Python環(huán)境變量的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04

最新評論

射洪县| 龙井市| 临邑县| 怀远县| 五家渠市| 龙州县| 尼勒克县| 新密市| 临洮县| 康平县| 云和县| 扶绥县| 湖南省| 横山县| 柳林县| 板桥市| 望奎县| 晋城| 基隆市| 商都县| 香港 | 台江县| 罗城| 鹿泉市| 雷山县| 十堰市| 丰城市| 博罗县| 天等县| 青田县| 天峻县| 大邑县| 临猗县| 会东县| 静乐县| 大渡口区| 东莞市| 江山市| 保德县| 博白县| 台北县|