如下所示:
# -*- coding: utf-8 -*-# 水仙花數是指一個 n 位正整數 ( n≥3 ),它的每個位上的數字的 n 次冪之和等于它本身。# 要求:打印輸出所有的"水仙花數"。def f(n): list=[] for i in range(pow(10,n-1),pow(10,n)): list=map(int,str(i)) sum = 0 for k in range(0,len(list)): sum=sum+pow(list[k],n) if sum==i: print i if __name__=="__main__": n=int(raw_input("請輸入正整數的位數:")) f(n)
運行結果:
請輸入正整數的位數:5
54748
92727
93084
總結:
1、map函數是關鍵
2、list確實強大,再次膜拜
以上這篇python簡易實現任意位數的水仙花實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答