函數(shù)體內(nèi)部的語句在執(zhí)行時(shí),一旦執(zhí)行到return,函數(shù)就執(zhí)行完畢,并將結(jié)果返回。如果沒有return語句,函數(shù)執(zhí)行完畢后也會(huì)返回結(jié)果,只是結(jié)果為None。returnNone可以簡(jiǎn)寫為return。
python中的函數(shù)是可以返回多個(gè)值的。
比如在游戲中經(jīng)常需要從一個(gè)點(diǎn)移動(dòng)到另一個(gè)點(diǎn),給出坐標(biāo)、位移和角度,就可以計(jì)算出新的新的坐標(biāo):
importmath
defmove(x,y,step,angle=0):
nx=x+step*math.cos(angle)
ny=y-step*math.sin(angle)
returnnx,ny
然后,我們就可以同時(shí)獲得返回值:
>>>x,y=move(100,100,60,math.pi/6)
>>>print(x,y)
151.9615242270663270.0
但其實(shí)這只是一種假象,Python函數(shù)返回的仍然是單一值:
>>>r=move(100,100,60,math.pi/6)
>>>print(r)
(151.96152422706632,70.0)
原來返回值是一個(gè)tuple!但是,在語法上,返回一個(gè)tuple可以省略括號(hào),而多個(gè)變量可以同時(shí)接收一個(gè)tuple,按位置賦給對(duì)應(yīng)的值,所以,Python的函數(shù)返回多值其實(shí)就是返回一個(gè)tuple,但寫起來更方便。
以上內(nèi)容為大家介紹了Python培訓(xùn)之的函數(shù)能返回多個(gè)值嗎,希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。