python實(shí)現(xiàn)自冪數(shù)的示例代碼
1、什么是自冪數(shù)?
前文介紹過(guò) python 實(shí)現(xiàn)水仙花數(shù),其實(shí)水仙花數(shù)為自冪數(shù)的一種,即,3位自冪數(shù)。
自冪數(shù)是指一個(gè) n 位數(shù),它的每個(gè)位上的數(shù)字的 n 次冪之和等于它本身。(例如:當(dāng)n為3時(shí),有1^3 + 5^3 + 3^3 = 153,153即是n為3時(shí)的一個(gè)自冪數(shù))
2、自冪數(shù)包括:
一位自冪數(shù):獨(dú)身數(shù) 0-9
兩位自冪數(shù):沒有
三位自冪數(shù):水仙花數(shù) 153,370,371,407
四位自冪數(shù):四葉玫瑰數(shù) 1634,8208,9474
五位自冪數(shù):五角星數(shù) 54748,92727,93084
六位自冪數(shù):六合數(shù) 548834
七位自冪數(shù):北斗七星數(shù) 1741725,4210818,9800817,9926315
八位自冪數(shù):八仙數(shù) 24678050,24678051,88593477
九位自冪數(shù):九九重陽(yáng)數(shù) 146511208,472335975,534494836,912985153
十位自冪數(shù):十全十美數(shù) 4679307774
。。。
3、實(shí)現(xiàn)
前文已實(shí)現(xiàn)過(guò)水仙花數(shù),只需要將函數(shù)稍微修改下,根據(jù)數(shù)據(jù)長(zhǎng)度判斷冪次,就可計(jì)算任意范圍的自冪數(shù)
def number_self_power_y(m=100, n=1000): if type(m) is int and type(n) is int and 0 <= m < n: my_range = (x for x in range(m, n)) for num in my_range: sum = 0 p = len(str(num)) # 冪 a = [int(s) for s in str(num)] # 數(shù) for i in a: sum += i ** p # 和 if num == sum: yield num elif type(m) is not int or type(n) is not int: raise Exception('參數(shù)類型錯(cuò)誤') elif m < 0 or m > n: raise Exception('參數(shù)超出范圍')
n = number_self_power_y(0, 10000000) print([i for i in n])
到此這篇關(guān)于python實(shí)現(xiàn)自冪數(shù)的示例代碼的文章就介紹到這了,更多相關(guān)python 自冪數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python圖片處理庫(kù)Pillow實(shí)現(xiàn)簡(jiǎn)單PS功能
Python 屆處理圖片最強(qiáng)的庫(kù)是 PIL(Python Image Library),但由于該庫(kù)只支持 2.x 版本,在此基礎(chǔ)上做了擴(kuò)展,出了一個(gè)兼容 3.x 的版本也就是 Pillow,因此,我們今天要用的庫(kù)就是Pillow2021-11-11Python學(xué)習(xí)筆記之Zip和Enumerate用法實(shí)例分析
這篇文章主要介紹了Python學(xué)習(xí)筆記之Zip和Enumerate用法,結(jié)合實(shí)例形式分析了Zip和Enumerate的功能、用法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-08-08numpy和tensorflow中的各種乘法(點(diǎn)乘和矩陣乘)
這篇文章主要介紹了numpy和tensorflow中的各種乘法(點(diǎn)乘和矩陣乘),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03python3 使用Opencv打開USB攝像頭,配置1080P分辨率的操作
今天小編就為大家分享一篇python3 使用Opencv打開USB攝像頭,配置1080P分辨率的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12python中關(guān)于eval函數(shù)的使用及說(shuō)明
這篇文章主要介紹了python中關(guān)于eval函數(shù)的使用及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05np.where()[0] 和 np.where()[1]的具體使用
這篇文章主要介紹了np.where()[0] 和 np.where()[1]的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03python matplotlib 畫dataframe的時(shí)間序列圖實(shí)例
今天小編就為大家分享一篇python matplotlib 畫dataframe的時(shí)間序列圖實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11