小編寫這篇文章的主要目的,主要是給大家介紹一下關(guān)于Python函數(shù)的相關(guān)實(shí)例,主要想給大家解答,其主要的函數(shù)參數(shù)類型有什么,下面就給大家詳細(xì)的進(jìn)行解答下。
1、Python的函數(shù)參數(shù)的類型
必傳參數(shù):調(diào)用函數(shù)時必須傳入的參數(shù),函數(shù)定義時只定義參數(shù)名
關(guān)鍵字參數(shù):傳入時以函數(shù)的參數(shù)名值對的方式傳入
默認(rèn)參數(shù):函數(shù)定義時為參數(shù)默認(rèn)設(shè)置一個值,調(diào)用時不傳輸參數(shù)即以默認(rèn)值處理
不定長參數(shù):以*修飾或者**修飾的參數(shù);*修飾的參數(shù)是一個元組(tuple),**修飾的參數(shù)必須是字典(dict),通常寫作*args或者**args
2、Python的必傳參數(shù)
傳入的參數(shù)個數(shù)必須與形參的數(shù)量一致
#coding:utf-8 #Author:YangXiaoPeng def demo01(a,b): print(a,type(a)) print(b,type(b)) #demo01(1)#TypeError missing 1 required positional argument:'b'缺少一個未知的參數(shù),demo01必須傳2個參數(shù) #demo01(1,2,3)#TypeError demo01()takes 2 positional arguments but 3 were given,demo01函數(shù)有2個位置參數(shù),但是接收到了3個; #必傳參數(shù):調(diào)用函數(shù)時必須傳入的參數(shù),函數(shù)定義時只定義參數(shù)名 #傳入的參數(shù)個數(shù)必須與形參的數(shù)量一致 demo01(1,2)#yes demo01(1,[1,2])#yes demo01([2,3],(1,2))#yes demo01(1,{2,3,4})#yes demo01(2,{"code":'1001',"name":"zhang","age":18})#yes
3、關(guān)鍵字參數(shù)
以參數(shù)名和參數(shù)值的關(guān)聯(lián)在一起的方式進(jìn)行傳參,鍵值對的模式,參數(shù)名為鍵。
#coding:utf-8 #Author:YangXiaoPeng def demo01(a,b): print(a,type(a),end="__") print(b,type(b)) #第一個關(guān)鍵字出入的參數(shù)位置之前的參數(shù)比遜選擇關(guān)鍵字傳參;如下面的示例中,第一個關(guān)鍵字傳參的變量是a,a在函數(shù)定義的第二個位置,那么第二個位置之前的參數(shù)都必須以關(guān)鍵字傳參的形式傳參。 #demo01(1,a=2)#demo01()got multiple values for argument'a' demo01(a=1,b=2)#yes demo01(1,b=2)#yes demo01(b=1,a=2)#yes demo01(b=1,a=[1,2])#yes demo01(b=[2,3],a=(1,2))#yes demo01(b=1,a={2,3,4})#yes demo01(b=2,a={"code":'1001',"name":"zhang","age":18})#yes
4、默認(rèn)參數(shù)
調(diào)用函數(shù)時不傳入?yún)?shù)an默認(rèn)值處理,傳入時按傳入的參數(shù)值處理
#coding:utf-8 #Author:YangXiaoPeng ##默認(rèn)參數(shù) def demo02(City="LongNan"): print("City是默認(rèn)參數(shù),默認(rèn)值是:中國,當(dāng)前值是:",City) #不傳入?yún)?shù) demo02() #傳入?yún)?shù) demo02("Beijing")
5、不定長參數(shù)
傳入的參數(shù)會生成一個元組類型的變量供函數(shù)內(nèi)部使用
#coding:utf-8 #Author:YangXiaoPeng ##不定長參數(shù) def demo03(*args): print(args,type(args)) #傳入的參數(shù)會生成一個元組類型的變量供函數(shù)內(nèi)部使用 demo03(1) demo03("code") demo03(1,"code")
傳入的參數(shù)不能少于必傳參數(shù)的個數(shù)
*args后面的形參,必須以關(guān)鍵字參數(shù)進(jìn)行傳參
#coding:utf-8 #Author:YangXiaoPeng #*args后面的形參,必須以關(guān)鍵字參數(shù)進(jìn)行傳參, def demo04(a,b,*args,c): print("a傳入的參數(shù)值是:{},b傳入的參數(shù)值是:{},args傳入的參數(shù)是:{},c出入的參數(shù)是:{}".format(a,b,args,c)) #傳入的參數(shù)不能少于必傳參數(shù)的個數(shù),a,b,c三個為必傳參數(shù) #demo04(1,2)#TypeError #demo04(1,2,3)#TypeError demo04(1,2,c=3)
*args之前的參數(shù)只能按位置傳參,不可以關(guān)鍵字傳參
傳入的參數(shù)個數(shù)比必傳參數(shù)多時,首先給必傳參數(shù)按位置賦值,然后將剩余的參數(shù)生成一個元組傳遞給args
**修飾的參數(shù)必須以關(guān)鍵字的參數(shù)方式傳參,Python解釋器會將傳入的關(guān)鍵字和關(guān)鍵字的值生成一個字典供函數(shù)內(nèi)部使用
#coding:utf-8 #Author:YangXiaoPeng def demo05(**kwargs): print("kwargs傳入的參數(shù)是:{}".format(kwargs),type(kwargs)) kwargs={"code":'1002',"name":"zhang"} #demo05(kwargs)#TypeError #**修飾的參數(shù)必須以關(guān)鍵字的參數(shù)方式傳參,Python解釋器會將傳入的關(guān)鍵字和關(guān)鍵字的值生成一個字典供函數(shù)內(nèi)部使用 demo05(**kwargs)#kwargs傳入的參數(shù)是:{'code':'1002','name':'zhang'}<class'dict'> demo05(code='1002',name="zhang")#kwargs傳入的參數(shù)是:{'code':'1002','name':'zhang'}<class'dict'>
**修飾的參數(shù)必須是最后一個
#coding:utf-8 #Author:YangXiaoPeng #**修飾的參數(shù)必須是最后一個 """ #SyntaxError:invalid syntax def demo06(a,b,*args,c,**kwargs,d): pass """ def demo06(a,b,*args,c,**kwargs): print("a傳入的參數(shù)值是:{},b傳入的參數(shù)值是:{},args傳入的參數(shù)是:{}".format(a,b,args),end='') print(",c傳入的參數(shù)是:{},kwargs傳入的參數(shù)是:{}".format(c,kwargs)) demo06(1,2,3,4,5,c=3,code='1002',name="zhang",d=3)
綜上所述,關(guān)于Python中函數(shù)參數(shù)類型的解答,就為大家介紹到這里了,希望可以給各位讀者帶來幫助。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/127804.html
摘要:零預(yù)備知識字符編碼計算機(jī)只能處理數(shù)字,所以為文本需要轉(zhuǎn)化為數(shù)字才能被計算機(jī)處理,計算機(jī)里八個比特作為一個字節(jié),這是數(shù)據(jù)的存儲基礎(chǔ)單位。 零、預(yù)備知識 0.1 字符編碼計算機(jī)只能處理數(shù)字,所以為文本需要轉(zhuǎn)化為數(shù)字才能被計算機(jī)處理,計算機(jī)里八個比特(bit)作為一個字節(jié)(byte),這是數(shù)據(jù)的存儲基礎(chǔ)單位。計算機(jī)為了處理文本,有以下三種編碼方式: ASCII碼:只有大小寫英文字母,數(shù)字...
摘要:輸出數(shù)據(jù)的第維將根據(jù)指定。輸入數(shù)據(jù)必須是一個二維的矩陣,經(jīng)過轉(zhuǎn)置或者不轉(zhuǎn)置,內(nèi)部維度必須相匹配。默認(rèn)情況下,該標(biāo)記都是被設(shè)置為。解釋這個函數(shù)的作用是將兩個 作者:chen_h微信號 & QQ:862251340微信公眾號:coderpai簡書地址:https://www.jianshu.com/p/ce4... 計劃現(xiàn)將 tensorflow 中的 Python API 做一個學(xué)習(xí),...
摘要:解釋這個函數(shù)的作用是對的維度進(jìn)行重新組合。其中,表示要解壓出來的的個數(shù)。如果,無法得到,那么系統(tǒng)將拋出異常。異常如果沒有被正確指定,那么將拋出異常。向量中的值必須滿足,并且其長度必須是。對于每個切片的輸出,我們將第維度的前的數(shù)據(jù)進(jìn)行翻轉(zhuǎn)。 作者:chen_h微信號 & QQ:862251340微信公眾號:coderpai簡書地址:https://www.jianshu.com/p/00...
摘要:隨機(jī)數(shù)張量提供了一些函數(shù),去幫助我們構(gòu)建隨機(jī)數(shù)張量。該值表示正態(tài)分布的均值。一個維的,或者一個數(shù)據(jù)類型是的值,該值表示正態(tài)分布的標(biāo)準(zhǔn)偏差。解釋這個函數(shù)返回一個隨機(jī)數(shù)序列,數(shù)組里面的值按照均勻分布,數(shù)據(jù)范圍是。 作者:chen_h微信號 & QQ:862251340微信公眾號:coderpai簡書地址:https://www.jianshu.com/p/d05... 計劃現(xiàn)將 tens...
摘要:友情鏈接譯技能測試解決方案中的數(shù)據(jù)科學(xué)一譯技能測試解決方案中的數(shù)據(jù)科學(xué)二譯技能測試解決方案中的數(shù)據(jù)科學(xué)三 本文是譯文,可以轉(zhuǎn)載,但需注明出處,點(diǎn)擊這里可以獲取原文,有刪減。本系列博文包含四篇文章:【譯】技能測試解決方案:Python中的數(shù)據(jù)科學(xué)(一)——Q1-Q15【譯】技能測試解決方案:Python中的數(shù)據(jù)科學(xué)(二)——Q16-Q30【譯】技能測試解決方案:Python中的數(shù)據(jù)科學(xué)(...
摘要:數(shù)據(jù)維度是一維,表示輸出密集張量的維度。解釋這個函數(shù)的作用是將稀疏張量的坐標(biāo)轉(zhuǎn)換成密集張量中的布爾坐標(biāo)。一個布爾類型的向量,向量長度是,并且其中包含個值。一個布爾類型的向量,數(shù)據(jù)長度是,如果該行填充了,那么該位置的布爾值為。 作者:chen_h微信號 & QQ:862251340微信公眾號:coderpai簡書地址:https://www.jianshu.com/p/c23... 計...
閱讀 911·2023-01-14 11:38
閱讀 878·2023-01-14 11:04
閱讀 740·2023-01-14 10:48
閱讀 1982·2023-01-14 10:34
閱讀 942·2023-01-14 10:24
閱讀 819·2023-01-14 10:18
閱讀 499·2023-01-14 10:09
閱讀 572·2023-01-14 10:02