python中函數(shù)返回多個(gè)結(jié)果的實(shí)例方法
其實(shí)有一個(gè)疑惑一直在小編心中,每一個(gè)代碼段編寫里,總會(huì)出現(xiàn)好多個(gè)函數(shù),也許有人和小編有一樣的認(rèn)同感,后來,小編明白,每一個(gè)函數(shù)本身都是都有各自的目的,有的是需要去必須返回一個(gè)字符串,有的是必須要去返回浮點(diǎn)數(shù),還有的是需要去返回多個(gè)值,這也是大家所需要的,下面給大家演示。
函數(shù)返回多個(gè)結(jié)果
$ vim e3.pydef damage(skill1,skill2): damage1 = skill1 * 3 damage2 = skill2 * 2 + 10 return damage1,damage2skill1_damage,skill2_damage = damage(3,6) print(skill1_damage,skill2_damage)
執(zhí)行結(jié)果
$ python2.7 e3.py
(9, 22)
Python中的函數(shù)是可以返回多個(gè)值比如在游戲中經(jīng)常需要從一個(gè)點(diǎn)移動(dòng)到另一個(gè)點(diǎn),給出坐標(biāo)、位移和角度,就可以計(jì)算出新的新的坐標(biāo):
import mathdef move(x, y, step, angle=0): nx = x + step * math.cos(angle) ny = y - step * math.sin(angle) return nx, ny
然后,我們就可以同時(shí)獲得返回值:
>>> x, y = move(100, 100, 60, math.pi / 6)>>> print(x, y)151.96152422706632 70.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,但寫起來更方便。
相關(guān)文章:
1. 前端html+css實(shí)現(xiàn)動(dòng)態(tài)生日快樂代碼2. 詳解CSS偽元素的妙用單標(biāo)簽之美3. Vue3使用JSX的方法實(shí)例(筆記自用)4. vue實(shí)現(xiàn)將自己網(wǎng)站(h5鏈接)分享到微信中形成小卡片的超詳細(xì)教程5. 不要在HTML中濫用div6. 利用CSS3新特性創(chuàng)建透明邊框三角7. CSS3實(shí)例分享之多重背景的實(shí)現(xiàn)(Multiple backgrounds)8. 多級(jí)聯(lián)動(dòng)下拉選擇框,動(dòng)態(tài)獲取下一級(jí)9. Vue3獲取DOM節(jié)點(diǎn)的3種方式實(shí)例10. XML入門的常見問題(三)
