一、函數(shù)定義
- 在Python中,定義一個函數(shù)要使用def語句,依次寫出函數(shù)名、括號、括號中的參數(shù)和冒號 “ : ” ,然后,在縮進(jìn)塊中編寫函數(shù)體,函數(shù)的返回值用return語句返回。
- Python 定義函數(shù)使用 def 關(guān)鍵字,一般格式如下:
def foo(參數(shù)1, 參數(shù)2):
code1
code2
return 返回值
- 實(shí)例
>>> def hello() :
print("Hello World!")
>>> hello()
Hello World!
>>>
- 空函數(shù)
想定義一個什么事也不做的空函數(shù),可以用pass語句:
def nop():
pass
二、函數(shù)調(diào)用
- 函數(shù)調(diào)用直接將函數(shù)名調(diào)用即可。
- 實(shí)例:
# 定義函數(shù)
def lyyyyy( str ):
# 打印任何傳入的字符串
print (str)
return
# 調(diào)用函數(shù)
lyyyyy("調(diào)用用戶自定義函數(shù)!")
lyyyyy("再次調(diào)用同一函數(shù)")
以上實(shí)例輸出結(jié)果:
調(diào)用用戶自定義函數(shù)!
再次調(diào)用同一函數(shù)
三、函數(shù)參數(shù)
- 參數(shù)分類:
① 形參:位置形參,默認(rèn)形參,可變長參數(shù)。
def foo(x, y): #位置形參
pass
def foo(x, y = 1): #默認(rèn)形參y
pass
def foo(x, *args, **kwargs): # 可變長參數(shù)*args,**kwargs
pass
② 實(shí)參:位置實(shí)參,關(guān)鍵字實(shí)參,可變長實(shí)參(*后面必須跟可迭代對象, **后面必須是字典)。調(diào)用階段:
foo(1, 2)
foo(x = 1, y =2)
foo(*"hello", **{'x': 1, 'y': 2})
- 調(diào)用函數(shù)時可使用的參數(shù)類型(參數(shù)定義的順序):
- 位置參數(shù)
- 默認(rèn)參數(shù)
- 可變參數(shù)
- 命名關(guān)鍵字參數(shù)
- 關(guān)鍵字參數(shù)
1. 位置參數(shù)
- 以實(shí)例說明
#計算x2的函數(shù)
def power(x):
return x * x
對于power(x)函數(shù),參數(shù)x就是一個位置參數(shù)。
當(dāng)我們調(diào)用power函數(shù)時,必須傳入有且僅有的一個參數(shù)x:
>>> power(5)
25
>>> power(15)
225
2. 默認(rèn)參數(shù)
- 以例說明:
def power(x, n=2):
s = 1
while n > 0:
n = n - 1
s = s * x
return s
未完....