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

Python函數(shù)的參數(shù)類型和使用技巧詳解

 更新時間:2023年08月18日 11:04:30   作者:天元浪子  
這篇文章主要介紹了Python函數(shù)的參數(shù)類型和使用技巧詳解,函數(shù)指通過專門的代碼組織,用來實現(xiàn)特定功能的代碼段,具有相對的獨立性,可以被其他代碼重復調用,需要的朋友可以參考下

Python函數(shù)的參數(shù)類型和使用技巧詳解

先來定義一個計算體重指數(shù)(BMI)的函數(shù)。

體重指數(shù)就是體重與身高的平方之比,其中體重以千克為單位,身高以米為單位。

 def bmi(height, weight, name):
	i = weight/height**2
	print('%s的體重指數(shù)為%0.1f'%(name, i))
 bmi(1.75, 75, 'Xufive')
#Xufive的體重指數(shù)為24.5

自定義函數(shù)bmi有三個參數(shù),每個參數(shù)都有明確的含義。

調用這個函數(shù)時,必須按照定義的順序傳入這三個參數(shù),缺一不可。

這也是Python函數(shù)最基本的參數(shù)傳遞規(guī)則。

接下來把bmi函數(shù)稍微改造一下,給name參數(shù)指定一個默認值。

 def bmi(height, weight, name='您'):
	i = weight/height**2
	print('%s的體重指數(shù)為%0.1f'%(name, i))
 bmi(1.75,75) # 可以不傳遞name參數(shù),使用默認值
#您的體重指數(shù)為24.5
 bmi(1.75,75,'Xufive') # 也可以傳遞name參數(shù)
#Xufive的體重指數(shù)為24.5

現(xiàn)在bmi函數(shù)就有了兩種類型的參數(shù):weight和height,它們是函數(shù)調用時必不可少的參數(shù),且順序必須與函數(shù)定義的保持一致,這樣的參數(shù)稱為 位置參數(shù)

name是函數(shù)調用時可有可無的參數(shù)(如未提供,則使用默認值),這樣的參數(shù)稱為 默認參數(shù) 。

默認參數(shù)可以有多個。

為了使結果更準確,可以考慮使用最近一段時期內多個體重的均值來計算體重指數(shù),這就意味著需要輸入多個體重值。

我們固然可以一個體重的元組或列表傳給weight,但這樣weight和height就不是同一種類型了,在形式上失去了美感,在使用時也容易產生誤會。最好的方式就是讓函數(shù)可以接受不確定個數(shù)的體重參數(shù)。

 def bmi(height, *args, name='您'):
	i = (sum(args)/len(args))/height**2
	print('%s的體重指數(shù)為%0.1f'%(name, i))
 bmi(1.75, 75, name='xufive')
#xufive的體重指數(shù)為24.5
 bmi(1.75, 75, 74)
#您的體重指數(shù)為24.3
 bmi(1.75, 75, 74, 75.5, 74.7, name='xufive')
#xufive的體重指數(shù)為24.4

實際上,像下面這樣調用函數(shù)也沒有問題。

 weight = [75, 74, 75.5, 74.7]
 bmi(1.75, *weight, name='xufive')
#xufive的體重指數(shù)為24.4

這下就有點復雜了,bmi函數(shù)有了三種類型的參數(shù)。除了位置參數(shù)和默認參數(shù),又多了一種 可變參數(shù) ,即bmi函數(shù)可以接受不限數(shù)量的參數(shù)。在函數(shù)定義時,可變參數(shù)名前面冠以“*”號;在函數(shù)體內,可變參數(shù)相當于一個元組。

如此一來,就產生了一個新的問題:三種類型的參數(shù)應該以怎樣的順序被定義呢?

位置參數(shù)排在首位,這一點沒有異議。默認參數(shù)原則上放在最后,但調用時必須加上參數(shù)名(如上面的例子),否則函數(shù)無法區(qū)分究竟是可變參數(shù)還是默認參數(shù)。

默認參數(shù)也可以放在可變參數(shù)之前(不建議這樣做),但調用時不能使用參數(shù)名,即便使用默認值也不能省略參數(shù),否則函數(shù)會用后面的可變參數(shù)的第一個值(如果有的話)強制為其賦值。

下面說一說更復雜的情況。除了上面介紹的三種類型的參數(shù)外,Python函數(shù)還支持第四種類型的參數(shù): 關鍵字參數(shù) 。

關鍵字參數(shù)由不限數(shù)量的鍵值對組成。在函數(shù)定義時,關鍵字參數(shù)名前面冠以“**”號;在函數(shù)體內,關鍵字參數(shù)相當于一個字典。

 def bmi(height, *args, name='您', **kwds):
	i = (sum(args)/len(args))/height**2
	print('%s的體重指數(shù)為%0.1f'%(name, i))
	for key in kwds:
		print('%s的%s是%s'%(name, key, str(kwds[key])))
 bmi(1.75, 75, 74, 75.5, 74.7, name='Xufive')
Xufive的體重指數(shù)為24.4
 bmi(1.75, 75, 74, name='Xufive', 性別='男', 愛好='攝影')
#Xufive的體重指數(shù)為24.3
#Xufive的性別是男
#Xufive的愛好是攝影
 bmi(1.75, 75, 74, 性別='男', 愛好='攝影', name='Xufive')
#Xufive的體重指數(shù)為24.3
#Xufive的性別是男
#Xufive的愛好是攝影
 bmi(1.75, 75, 74, 75.5, 74.7, 性別='男', 愛好='攝影')
#您的體重指數(shù)為24.4
#您的性別是男
#您的愛好是攝影

如果一個函數(shù)同時具備了上述四種類型的參數(shù),函數(shù)定義時參數(shù)的正確順序應該是位置參數(shù)排在首位,可變參數(shù)次之,默認參數(shù)再次之,關鍵字參數(shù)排在末尾。

函數(shù)調用時,如果需要指定默認參數(shù),其參數(shù)名不能省略,位置在可變參數(shù)之后,可以在關鍵字參數(shù)之前,也可以在其后,也可以混雜其中。

到此這篇關于Python函數(shù)的參數(shù)類型和使用技巧詳解的文章就介紹到這了,更多相關Python函數(shù)的參數(shù)類型內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python 使用SFTP和FTP實現(xiàn)對服務器的文件下載功能

    Python 使用SFTP和FTP實現(xiàn)對服務器的文件下載功能

    這篇文章主要介紹了Python 使用SFTP和FTP實現(xiàn)對服務器的文件下載功能,本文通過實例代碼給大家介紹的非常想詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • python爬蟲_微信公眾號推送信息爬取的實例

    python爬蟲_微信公眾號推送信息爬取的實例

    下面小編就為大家?guī)硪黄猵ython爬蟲_微信公眾號推送信息爬取的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • python使用pyqt寫帶界面工具的示例代碼

    python使用pyqt寫帶界面工具的示例代碼

    本篇文章主要介紹了python使用pyqt寫帶界面工具的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • Python中兩個列表數(shù)字相加的4種方法示例詳解

    Python中兩個列表數(shù)字相加的4種方法示例詳解

    這篇文章主要給大家介紹了關于Python中兩個列表數(shù)字相加的4種方法,我們可以使用Python的加號和減號運算符來實現(xiàn)兩個數(shù)字的相加減,需要的朋友可以參考下
    2023-08-08
  • python入門課程第四講之內置數(shù)據(jù)類型有哪些

    python入門課程第四講之內置數(shù)據(jù)類型有哪些

    這篇文章主要介紹了python入門課程第四講之內置數(shù)據(jù)類型有哪些?本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • python 爬蟲網(wǎng)頁登陸的簡單實現(xiàn)

    python 爬蟲網(wǎng)頁登陸的簡單實現(xiàn)

    這篇文章主要介紹了python 爬蟲網(wǎng)頁登陸的簡單實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • pandas按某2列進行分層隨機抽樣的實現(xiàn)

    pandas按某2列進行分層隨機抽樣的實現(xiàn)

    本文主要介紹了pandas按某2列進行分層隨機抽樣的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-12-12
  • Pandas 數(shù)據(jù)清洗的具體使用

    Pandas 數(shù)據(jù)清洗的具體使用

    很多數(shù)據(jù)集存在數(shù)據(jù)缺失、數(shù)據(jù)格式錯誤、錯誤數(shù)據(jù)或重復數(shù)據(jù)的情況,本文主要介紹了Pandas 數(shù)據(jù)清洗的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-02-02
  • Python類定義和類繼承詳解

    Python類定義和類繼承詳解

    這篇文章主要介紹了Python類定義和類繼承詳解,本文講解了類的私有屬性、類的方法、私有的類方法、類的專有方法、類的定義、類的單繼承、類的多繼承等內容,需要的朋友可以參考下
    2015-05-05
  • Python爬蟲獲取數(shù)據(jù)保存到數(shù)據(jù)庫中的超詳細教程(一看就會)

    Python爬蟲獲取數(shù)據(jù)保存到數(shù)據(jù)庫中的超詳細教程(一看就會)

    使用爬蟲爬數(shù)據(jù),總要涉及到數(shù)據(jù)持久化,也就是數(shù)據(jù)存儲的問題,下面這篇文章主要給大家介紹了關于Python爬蟲獲取數(shù)據(jù)保存到數(shù)據(jù)庫中的超詳細教程,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-06-06

最新評論

建平县| 内丘县| 静乐县| 谢通门县| 德清县| 驻马店市| 河源市| 景谷| 新民市| 江都市| 江都市| 伊通| 泌阳县| 嘉祥县| 耒阳市| 荆门市| 长子县| 新乐市| 香格里拉县| 普兰县| 太原市| 波密县| 普安县| 子长县| 双城市| 洛阳市| 榆林市| 客服| 丰台区| 临潭县| 旅游| 桐庐县| 丰镇市| 南阳市| 孝昌县| 义乌市| SHOW| 梁山县| 阳原县| 高阳县| 轮台县|