python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python找水仙花数

使用Python找出水仙花数的方法介绍

作者:python小爬菜

水仙花数也被称为超完全数字不变数、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数,水仙花数是指一个3位数,本文就给大家简单聊聊如何使用Python找出水仙花数,感兴趣的同学可以参考阅读

一、前置内容

水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。

1.1、遍历循环

for i in range(5):  
print(i)

1.2、无限循环

while(True):
print(1)

1.3、循环控制保留字

1.4、循环的高级用法

二、案例需求

了解到水仙花数后,我想找出1000之内的水仙花数.
输入 : 无
输出 : 153 370 371 407

三、案例分析与解决过程

1、怎么将三位数的百位、十位、个位分别获取出来?
答案:
获取百位直接//100就得到了百位
获取十位直接%100得到十位+个位,然后对剩下的十位+个位//10就得到了十位
获取个位直接对%10

2、怎么将范围限定到100到1000以内
答案:使用for i in range(100 , 1000) , 意思是遍历100到999

四、完整代码

# 寻找1000之内的水仙花数  
for i in range(100 , 1000) :  
# 获取百位  
bai = i // 100  
# 获取十位  
shi = i % 100 // 10  
# 获取个位  
ge = i % 10  
# 求取每个数的三次方  
result = pow(bai , 3 ) + pow(shi ,3 ) + pow(ge , 3);  
# 判断是不是水仙花数字  
if(i == result):  
print(i)

五、检验与验收代码

六、复盘所学知识

1、for i in range(N) 循环N次

到此这篇关于使用Python找出水仙花数的方法介绍的文章就介绍到这了,更多相关Python找水仙花数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文