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

關(guān)于Python中函數(shù)的幾種形參

 更新時間:2023年08月16日 10:34:59   作者:人氣小姜  
這篇文章主要介紹了關(guān)于Python中函數(shù)的幾種形參,python中函數(shù)是非常重要的一個知識點(diǎn),想要把函數(shù)學(xué)習(xí)好,就必須要把函數(shù)的參數(shù)學(xué)習(xí)好,這樣才能夠進(jìn)行很好的傳遞參數(shù),發(fā)揮出應(yīng)有的作用,需要的朋友可以參考下

Python函數(shù)形參

函數(shù)的參數(shù)分類:

  • 形式參數(shù)和實(shí)際參數(shù)
  • 關(guān)鍵字參數(shù)
  • 可變類型參數(shù)和不可變類型參數(shù)
  • 位置參數(shù)
  • 可變長度參數(shù)
  • 默認(rèn)值參數(shù)

位置參數(shù)

必須按照準(zhǔn)確順序?qū)⒑瘮?shù)調(diào)用中的實(shí)參傳遞給函數(shù)定義中相應(yīng)的形參。

def user(name, age):
	print("{} is {} years old".format(name,age)) # format()方法是尋找字符串中{}標(biāo)識,然后把參數(shù)依次賦值給字符串中
user("Tom", 10)
user(10, "Tom")
# 輸出
Tom is 10 years old
10 is Tom years old

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

僅針對函數(shù)的調(diào)用,通過"參數(shù)名=參數(shù)值"的方式,可以直接在實(shí)參中將名稱和值關(guān)聯(lián)起來。這樣就不需要根據(jù)形參名字來區(qū)分參數(shù)了,即使不按照順序,解釋器也可以通過給出的關(guān)鍵字來匹配參數(shù)的值。

1:單個關(guān)鍵字參數(shù)

def user(name, age):
	print("{} is {} years old".format(name, age))
user("Tom", 10)
user(age=10, name="Tom") # 即使實(shí)參的位置不是按照形參位置,也能匹配到相對應(yīng)參數(shù)的值。
# 輸出:
Tom is 10 years old
Tom is 10 years old

2:可變長度關(guān)鍵字參數(shù),即字典參數(shù)??梢詡鬟f多個關(guān)鍵字參數(shù)

  • 如何使用:在定義函數(shù)的形參中,使用帶有兩個星號的形參,此時在調(diào)用函數(shù)時就可以傳遞多個關(guān)鍵字參數(shù),這些關(guān)鍵字參數(shù)都會傳遞給帶有兩個星號的形參中
  • 使用場景:在預(yù)先不知道傳遞給函數(shù)的會是什么信息的情況下
def users(f_name, l_name, **user_info):
	print("first name: " + f_name)
	print("last name: " + l_name)
	for arg_name, arg_value in user_info.items():
		print("{}:{}".format(arg_name, arg_value))
users("tom", "leaf", location="here", height=150, length=80 )
# 輸出
first name: tom
last name: leaf
location:here
height:150
length:80

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

編寫函數(shù)時形參指定了默認(rèn)值的參數(shù),在調(diào)用函數(shù)中給形參提供了實(shí)參時,優(yōu)先使用調(diào)用函數(shù)時提供的實(shí)參,如果調(diào)用函數(shù)時沒有提供實(shí)參值,使用函數(shù)定義中的默認(rèn)值

Tip:關(guān)鍵字參數(shù)必須放在所有位置參數(shù)的右邊。如果放在左邊,調(diào)用函數(shù)時傳遞的實(shí)參會默認(rèn)從左往右進(jìn)行關(guān)聯(lián),很有可能用戶這個實(shí)參是傳遞給位置參數(shù)的,但是卻被左邊的關(guān)鍵字參數(shù)攔截接收,那么關(guān)鍵字參數(shù)右邊的位置參數(shù)就沒有實(shí)參傳遞。此時就會報錯。

def user(name, age=12):
	print("{} is {} years old".format(name, age))
user("Tom", 10) # age參數(shù)傳遞了實(shí)參值,那么優(yōu)先使用傳遞的實(shí)參值
user("Tom")
user(name="Tom")
user(age=10, name="Tom") # 兩個參數(shù)都是關(guān)鍵字參數(shù),那么參數(shù)位置顛倒也可以正確匹配到
# 輸出:
Tom is 10 years old
Tom is 12 years old
Tom is 12 years old
Tom is 10 years old

非關(guān)鍵字可變長參數(shù)(元組)

  • 如何使用:在定義函數(shù)的形參中,使用帶有一個星號的形參,此時在調(diào)用函數(shù)時就可以傳遞多個參數(shù),這些參數(shù)都會被封裝到一個元組中,傳遞給函數(shù)定義中這個帶有一個星號的形參
  • 使用場景:在預(yù)先不知道傳遞給函數(shù)的會是什么信息的情況下
def users(*names):
	print(str(names))
	for name in names:
		print(name)
users("tech")
users("tom", "test", "amy")
# 輸出
tech
tach
('tom','tets','amy')
tom
test
amy

Tip:如果要讓函數(shù)接受不同類型的實(shí)參,就必須在函數(shù)定義中將接納任意數(shù)量實(shí)參的形參放在最后,這樣Python會先匹配位置實(shí)參和關(guān)鍵字實(shí)參,最后再將余下的實(shí)參都收集到最后一個元組實(shí)參中。

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

相關(guān)文章

  • python正則表達(dá)式re之compile函數(shù)解析

    python正則表達(dá)式re之compile函數(shù)解析

    這篇文章主要介紹了python正則表達(dá)式re之compile函數(shù)解析,介紹了其定義,匹配模式等相關(guān)內(nèi)容,具有一定參考價值,需要的朋友可以了解下。
    2017-10-10
  • python日志模塊logging案例詳解

    python日志模塊logging案例詳解

    日志模塊主要用于輸出運(yùn)行日志,可以設(shè)置輸出日志的等級、日志保存路徑、日志文件回滾等,這篇文章主要介紹了python日志模塊logging,需要的朋友可以參考下
    2024-01-01
  • PyCharm中的庫Flask安裝以及如何使用詳解

    PyCharm中的庫Flask安裝以及如何使用詳解

    在學(xué)習(xí)flask的過程中關(guān)于flask安裝的過程中遇到了很多的問題,通過自己的摸索和搜尋最終終于能夠成功運(yùn)行,下面這篇文章主要給大家介紹了關(guān)于PyCharm中庫Flask安裝以及如何使用的相關(guān)資料,需要的朋友可以參考下
    2023-12-12
  • Python實(shí)現(xiàn)配置文件備份的方法

    Python實(shí)現(xiàn)配置文件備份的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)配置文件備份的方法,實(shí)例分析了基于Linux平臺下Python文件壓縮備份的相關(guān)技巧,具有一定參考借鑒價值
    2015-07-07
  • Python爬蟲實(shí)例之2021貓眼票房字體加密反爬策略(粗略版)

    Python爬蟲實(shí)例之2021貓眼票房字體加密反爬策略(粗略版)

    這篇文章主要介紹了Python爬蟲實(shí)例之2021貓眼票房字體加密反爬策略(粗略版),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • 高效使用Python字典的清單

    高效使用Python字典的清單

    字典(dict)對象是 Python 最常用的數(shù)據(jù)結(jié)構(gòu),本文給大家介紹使用Python字典的清單,感興趣的朋友一起看看吧
    2018-04-04
  • 詳解Python Opencv和PIL讀取圖像文件的差別

    詳解Python Opencv和PIL讀取圖像文件的差別

    這篇文章主要介紹了詳解Python Opencv和PIL讀取圖像文件的差別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • Python深度學(xué)習(xí)實(shí)戰(zhàn)PyQt5信號與槽的連接

    Python深度學(xué)習(xí)實(shí)戰(zhàn)PyQt5信號與槽的連接

    本文講解信號與槽的連接機(jī)制,詳細(xì)示范各種類型的信號/槽連接的實(shí)現(xiàn)方法,這是圖形用戶界面的核心內(nèi)容。還將介紹面向?qū)ο蟮某绦蛟O(shè)計(jì),這是圖形用戶界面的基本思想
    2021-10-10
  • Python3enumrate和range對比及示例詳解

    Python3enumrate和range對比及示例詳解

    這篇文章主要介紹了Python3enumrate和range對比及示例詳解,在Python中,enumrate和range都常用于for循環(huán)中,enumrate函數(shù)用于同時循環(huán)列表和元素,而range()函數(shù)可以生成數(shù)值范圍變化的列表,而能夠用于for循環(huán)即都是可迭代的,需要的朋友可以參考下
    2019-07-07
  • python的tkinter、socket庫開發(fā)tcp的客戶端和服務(wù)端詳解

    python的tkinter、socket庫開發(fā)tcp的客戶端和服務(wù)端詳解

    本文介紹了TCP通訊流程和開發(fā)步驟,包括客戶端和服務(wù)端的實(shí)現(xiàn),客戶端使用Python的tkinter庫實(shí)現(xiàn)圖形化界面,服務(wù)端使用socket庫監(jiān)聽連接并處理消息,文章還提供了客戶端和服務(wù)端的代碼示例
    2025-01-01

最新評論

贵港市| 青浦区| 上饶市| 台北县| 湖州市| 轮台县| 安仁县| 琼中| 桦川县| 成武县| 尼木县| 休宁县| 乡城县| 开阳县| 黄平县| 深州市| 浠水县| 大安市| 临漳县| 伽师县| 改则县| 安阳市| 张家港市| 武义县| 维西| 米易县| 沂源县| 遂平县| 山西省| 沽源县| 祁阳县| 静乐县| 从江县| 青冈县| 雅安市| 佳木斯市| 华阴市| 泸水县| 红原县| 泽州县| 西峡县|