語法:
def 函式名(形參名1=預設實參,形參名2=預設實參2,...):語句
示例:
def info(name,age=1,address="不詳"):
print("我是",name,'我今年:',age,'歲','家庭住址:',address)
info("張飛",30,'中原')
info('金毛',3)
info('柯基')
說明:
預設引數必須自右至左依次存在
預設引數可以有0個,1個,多個,甚至全部都有預設引數
預設引數的繫結物件存在於函式內,同函式的生命週期一致
示例:
def fn(a,lst=):
print(lst)
l=[1,2,3,4]
fn(5,l)
1.位置形參
2.星號元組形參
3.命名關鍵字形參
4.雙星號字典形參
def 函式名(形參名1,形參名2,...):語句塊
def 函式名(*元組形參名):作用: 收集多餘的位置傳參語句塊
def 函式名(*,命名關鍵字形參):語句塊
def 函式名(*args,命名關鍵字形參):作用:語句塊
所有命名關鍵字形參都強制呼叫採用關鍵字傳參或字典關鍵字傳參的方式呼叫
def 函式名(**字典形參名):作用:語句塊
收集多餘的關鍵字傳參
注:字典形參名通常叫 kwargs
位置形參,預設引數,星號元組形參,命名關鍵字形參,雙星號字典形參可以混合使用
自左至右的順序為:
1.位置形參
2.星號元組形參
3.命名關鍵字形參
4.雙星號字典形參
可以接受任意位置傳參和關鍵字傳參的函式:
def fn(*args,**kwargs):
pass
函式變數
函式名是變數,它是建立時繫結乙個函式
例項:
def f1(lst=):
print("f1函式被呼叫")
f1()
f1=none
f1() #出錯
f1 繫結none
例項:
def f1():
print("hello")
def f2():
print("world")
f1,f2=f2,f1
f1() #world
乙個函式可以作為另乙個函式的引數(實參)傳遞
示例:
def f1():
print("f1函式被呼叫")
def f2():
print("f2函式被呼叫")
def fx(fn):
print("fn繫結的函式是",fn)
函式可以作為另乙個函式的返回值:
函式可以返回另乙個函式
def get_op():
s = input("請輸入您的操作:")
if s == "求最大":
return max
elif s == "求最小":
return min
elif s == "求和":
return sum
l=[2,4,6,8,10]
print(l)
f = get_op()
print(f)
def 語句的作用是用來建立乙個函式
def 語句可以寫在函式內部,在函式執行時可以動態建立乙個函式
示例:
def get_func(value):
if value == 1:
def myadd(x,y):
retrun x + y
retrun myadd
elif value ==2:
def mysub(x,y):
retrun x - y
retrun mysub
fx = get_func(1)
print(fx(400,300)) #700
fx = get_func(2)
print(fx(400,300)) #100
python函式的形參實參
def fn 形參們 pass 形參 定義函式,在括號內宣告的變數名,用來結束外界傳來的值 實參 呼叫函式,在括號內傳入的實際值,值可以為常量 變數 表示式或三者的組合 注 形參隨著函式的呼叫而產生,隨著呼叫結束而銷毀 有特例 位置實參 必須按照順序給形參傳值 關鍵字實參 按照關鍵字給形參傳值,所以...
python3 函式 不定長引數 不定參
第一種不定長引數 args args 稱為不定長引數,只能放在形參的最後位置,返回的是乙個元組 def num a,b,args print a print b print args num 11,22 返回結果 1122 33,55會放在元組args中 num 11,22,33,55 返回結果 1...
python3 函式傳參 先後順序
當args與位置引數和預設引數混用的情況下 示例一 三者順序是 位置引數 預設引數 args def foo x,y 1,args pass foo 1,2,3,4,5 其中的x為1,y 1的值被2替換,3,4 5都給args,即args 3 4,5 示例二 三者順序是 位置引數 args 預設引數...