水仙花数指的是一个三位数的正整数,而在这三位数当中,个十百位上的数字的三次幂之和都等于这个数的本身,有很多的小伙伴就在好奇,Python如何打印出所有的水仙花数?下面这篇文章就带大家一起来学习Python打印出所有水仙花数的方法,希望能解决大家心中的疑惑。

Python如何打印出所有的水仙花数?使用Python打印出所有水仙花数的方法

下面通过具体的实例来进行讲解,代码如下:

for a in range(100,1000):
    x= a // 100
    y = a // 10 % 10
    z = a % 10
    if a == x ** 3 + y** 3 +z ** 3:
        print (a)

运行结果:

153
370
371
407

在这个示例中,我们是100-1000中的水仙花数进行求取。首先使用的是for循环来进行控制,将一个三位数的个十百为进行分割,并且将它赋值给一个a。

第二行代码:x = a // 100,是使用a去整除100,得到的就是三位数中的百位数字,并且将它赋值给x。

第三行代码:y = a // 10 % 10,用a去整除10,最后得到的就是一个百位数和一个十位数,再用这个数除以10求余数,就得到了我们的十位数字,将它赋值给y。

第四行代码:z = a % 10,用a去除以10,意思就是求取一个余数,得到的就是在三个数中的个位数数字,并且将它赋值给了z,那么,在这个时候,我们得到了一个三位数a的百位、十位、个位数字,并且分别赋值给了x、y、z。

最后一行代码就是使用if语句来进行判断:如果a等于它百位数字的立方+十位数字的立方+个位数字的立方,那么它就是水仙花数,如果满足条件就将a进行打印,否则就进入下一个循环。

以上就是Python如何打印出所有的水仙花数?使用Python打印出所有水仙花数的方法的详细内容,希望可以给大家的学习带来帮助。

更多python相关文章请访问分类:python

【版权声明】本文图文出自大盘站@dapan.cc,转载请注明出处!