一、定義函數函數
# 全局變量和局部變量名字相同 str = "aaa" # 定義了一個全局變量 def myPrint(): #global str#:使用global對一個全局變量的聲明 str = "bbb" print(str) myPrint() #結果:bbb print(str) #結果:aaa
二、缺省參數:spa
def myPrint(name, age = 10): print(name) print(age) myPrint("zs", 20) myPrint("zs") print("=" * 10) myPrint(name = "zs", age = 30) myPrint(name = "zs")
三、不定長參數code
def myPrint(a, *params): print(a) print(params) # (10, 20, 30) myPrint("zs", 10, 20, 30)
def myPrint(a, **params): print(a) print(params) for i in params: print(i) myPrint("zs", name='zs', age = 20)
四、拆包blog
def myPrint(a, *args, **params): print(a) print(args) print(params) args = (1, 2, 3); params = {'name':'zs', 'age':20}; myPrint("zs", *args, **params) 打印結果: zs (1, 2, 3) {'name': 'zs', 'age': 20}
五、匿名函數input
def test(a, b, fn): return fn(a, b) print(test(10, 20, lambda x,y:x+y)) print(test(10, 20, lambda x,y:x-y)) print(test(10, 20, lambda x,y:x*y))
def test(a, b, fn): return fn(a, b) fn_new = input("請輸入 lambda表達式:") print(test(10, 20, eval(fn_new)))