真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Python如何實現(xiàn)找出所有水仙花數(shù)-創(chuàng)新互聯(lián)

這篇文章主要介紹了Python如何實現(xiàn)找出所有水仙花數(shù),具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

成都創(chuàng)新互聯(lián)從2013年創(chuàng)立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元肅南裕固族自治做網(wǎng)站,已為上家服務(wù),為肅南裕固族自治各地企業(yè)和個人服務(wù),聯(lián)系電話:13518219792

水仙花數(shù)是指一個 3位正整數(shù),它的每個位上的數(shù)字的 3 次冪之和等于它本身。(例如:1^3 + 5^3+ 3^3 = 153)

下面用一句代碼實現(xiàn)找出所有的水仙花數(shù):

方法一:

>>> 
>>> a = list(map(lambda x: x[1], filter(lambda x: x[0], [(i*100+j*10+k == i**3+j**3+k**3, i**3+j**3+k**3) for i in range(1, 10) for j in range(0, 10) for k in range(0, 10)])))
>>> print(a)
[153, 370, 371, 407]
>>>

說明:

上面的代碼可以分解三句代碼:

a = [(i*100+j*10+k == i**3+j**3+k**3, i**3+j**3+k**3) for i in range(1, 10) for j in range(0, 10) for k in range(0, 10)]
b = filter(lambda x: x[0], a)
c = list(map(lambda x: x[1], b))

第一句表示用列表推到遍歷所有的三位數(shù),每個數(shù)都打上標(biāo)記,是水仙花數(shù)著標(biāo)記True,不是則標(biāo)記False,標(biāo)記和數(shù)放到一個元祖:(flag, value),所有元組放在一個list結(jié)構(gòu)里。

第二句表示篩選出標(biāo)記為True的元組。

第三句表示把第一句篩選出來的元組的第二個值放到list結(jié)構(gòu)里。

加上print語句,執(zhí)行一遍上面三句代碼即可明白。

方法二:

只用列表推導(dǎo)。

>>> a = [i**3+j**3+k**3 for i in range(1, 10) for j in range(0, 10) for k in range(0, 10) if i*100+j*10+k == i**3+j**3+k**3]
>>> print(a)
[153, 370, 371, 407]
>>>

感謝你能夠認真閱讀完這篇文章,希望小編分享的“Python如何實現(xiàn)找出所有水仙花數(shù)”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司,關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、網(wǎng)站設(shè)計器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


分享標(biāo)題:Python如何實現(xiàn)找出所有水仙花數(shù)-創(chuàng)新互聯(lián)
網(wǎng)頁地址:http://weahome.cn/article/hcooo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部