- 什么是函數(shù)
- 函數(shù)定義, 函數(shù)名, 函數(shù)體以及函數(shù)的調(diào)?
- 函數(shù)的返回值
- 函數(shù)的參數(shù)
什么是函數(shù)
函數(shù): 對(duì)代碼塊和功能的封裝和定義函數(shù)定義, 函數(shù)名, 函數(shù)體以及函數(shù)的調(diào)?
- 我們使用def關(guān)鍵字來定義函數(shù)塌西,函數(shù)的定義語法。
def 函數(shù)名():
函數(shù)體
這里的函數(shù)名的命名規(guī)則和使?用和變量量基本?一樣志衣。函數(shù)體:就是函數(shù)被執(zhí)行之后要執(zhí)行的代碼塊荧恍。
for example
def demo():
print("這就是函數(shù)")
函數(shù)定義完成后會(huì)發(fā)現(xiàn)什么都沒有發(fā)?生. 因?yàn)檫@里只定義了一個(gè)函數(shù). 但是還沒有執(zhí)?過這個(gè)函數(shù).
- 函數(shù)的調(diào)用:使用函數(shù)名可以調(diào)用函數(shù)味榛。寫法: 函數(shù)名(), 這個(gè)時(shí)候函數(shù)的函數(shù)體會(huì)被執(zhí)?丧靡。
# 調(diào)用函數(shù)
demo()
結(jié)果:
這就是函數(shù)。
分析一下執(zhí)行過程
def demo(): # 1.定義函數(shù) 3.準(zhǔn)備開始執(zhí)行函數(shù)
print("這就是函數(shù)") # 4.執(zhí)行函數(shù)
# 調(diào)用函數(shù)
demo() # 2.執(zhí)行函數(shù) 9函數(shù)執(zhí)行完畢
- 函數(shù)的返回
執(zhí)行完函數(shù)之后. 我們可以使用return來返回結(jié)果.
函數(shù)中return的使用:
函數(shù)中遇到return, 此函數(shù)結(jié)束, 不再繼續(xù)執(zhí)?行行.
def yue():
print("約你")
print("約我")
print("約他")
return
print("約誰呀")
# 這句話不會(huì)被執(zhí)?
yue()
- 給函數(shù)的調(diào)?用者一個(gè)訪問結(jié)果
def yue():
print("約你")
print("約我")
print("約他")
return "美?女女?一枚"
girl = yue()
print(girl)
# 美?女女?一枚
函數(shù)的返回值可以有多個(gè)結(jié)果
def yue():
print("約你")
print("約我")
print("約他")
return "美?女女?一枚", "蘿莉?一枚"
girl = yue()
print(type(girl))
# tuple
- 函數(shù)的參數(shù)
形參 寫在函數(shù)聲明的位置的變量量叫形參. 形式上的?一個(gè)完整. 表?示這個(gè)函數(shù)需要xxx
實(shí)參 在函數(shù)調(diào)?用的時(shí)候給函數(shù)傳遞的值. 叫實(shí)參, 實(shí)際執(zhí)?行行的時(shí)候給函數(shù)傳遞的信息. 表?示給函數(shù) xxx
傳參 給函數(shù)傳遞信息的時(shí)候?qū)?shí)際參數(shù)交給形式參數(shù)的過程被稱為傳參.
def 函數(shù)名(參數(shù)列列表):
函數(shù)體
def yue(chat): # chat 形參
print("拿出?手機(jī)")
print("打開"+chat)
print("找個(gè)漂亮的妹?子")
print("約不不約")
yue("陌陌") # 實(shí)參
len("字符串串") # "字符串串"在這?里里就是實(shí)參
print("麻花藤") # "麻花藤"就是實(shí)參
4.1 位置參數(shù)
def yue(chat, address, age): # 形參
print("拿出?手機(jī)")
print("打開"+chat)
print("找個(gè)"+address+"附近漂亮的"+str(age)+"歲妹?子")
print("約不不約")
yue("微信", "北北京", 18)
結(jié)果:
拿出?手機(jī)
打開微信
找個(gè)北京附近漂亮的18歲妹子
約不約
在訪問yue()的時(shí)候, 我們按照位置的順序分別把"微信", "北京", 18 賦值給 chat, address, age. 在傳參過程中. 系統(tǒng)會(huì)默認(rèn)按照位置把實(shí)參賦值到形參.
4.2 關(guān)鍵字參數(shù)
python提出了一種叫做關(guān)鍵字參數(shù). 我們不需要記住每個(gè)參 數(shù)的位置. 只要記住每個(gè)參數(shù)的名字就可以了了
def yue(chat, address, age):
print("拿出?手機(jī)")
print("打開"+chat)
print("找個(gè)"+address+"附近漂亮的"+str(age)+"歲妹?子")
print("約不不約")
yue(chat="微信", age=18, address="北北京") # 關(guān)鍵字參數(shù).
結(jié)果:
拿出?手機(jī)
打開微信
找個(gè)北京附近漂亮的18歲妹?子
約不約
4.3 混合參數(shù)
可以把上面兩種參數(shù)混合著使?用. 也就是說在調(diào)?用函數(shù)的時(shí)候即可以給出位置參數(shù), 也可以指定關(guān)鍵字參數(shù).
# 混合參數(shù)
yue("微信", age=18, address="上海") # 正確.第?一個(gè)位置賦值給chat, 后?面的參數(shù)開始
yue(age="18", "微信", address="廣州") # 錯(cuò)誤, 最開始使?了關(guān)鍵字參數(shù), 那么后?的微信的位置就串了, 容易出現(xiàn)混亂