1. 程式人生 > >Python3基礎14——函式

Python3基礎14——函式

Python內建函式
print input len type str int float list range pop append insert keys split replace  strip remove clear
函式的語法:def 關鍵字
函式名命名的規範:小寫字母 不能以數字開頭 不同的字母之間用下劃線隔開
def 函式名(引數1,引數2,引數3):
   函式體:你希望這個而函式去給你實現什麼功能?
函式有形式引數/位置引數、不定長(動態)引數、關鍵字引數,預設的情況下 按順序賦值,預設引數必須放在位置引數後面

例1:利用range函式請求出任意整數相加功能 寫成一個函式

def add_num(n,m=1,k=2):     形參/位置引數
    sum=0
    for i in range(m,n,k):  # (1,10,4)取1,5,9
        sum+=i
    return sum 

result = add_num(10,k=4)+10  預設引數必須放在位置引數後面
print(result)

<<<  25

當你呼叫函式的時候就會返回一個值(即return後面的表示式),在函式裡面相當於一個結束符號 表示函式到此為止

後面的程式碼不會被執行

def add_two(a,b):
    return (a+b)
    print("你猜猜我會打印出來嗎?")

res=add_two(1,3)+22
print(res)

<<< 26
動態引數/不定長引數 *args arguments 必須加*,在函式內部作為元組來傳遞
def make_sandwich(*args):
    all=""
    for item in args:
        all=all+item+"、"
    print("您的三明治包含了"+all)

make_sandwich('生菜','雞蛋','培根','牛肉','吐司')
make_sandwich()

<<< 您的三明治包含了生菜、雞蛋、培根、牛肉、吐司、
<<< 您的三明治包含了
關鍵字引數  key-value **kwargs  key word  必須加**
def kw_function(**kwargs):
    print(kwargs)

kw_function(x=1,y=2)

<<< {'x': 1, 'y': 2}

def add_all_num(a,*L,**kwargs):
    print(L)#元組
    sum=0
    for item in L:
        sum+=item
    print("和為",sum)
    print("a的值",a)
    print("kwargs",kwargs)

add_all_num(1,2,3,4,5,6,x=1,y=2)

<<< (2, 3, 4, 5, 6)
<<< 和為 20
<<< a的值 1
<<< kwargs {'x': 1, 'y': 2}