使用python实现鉴定一个数是否是水仙花数,并循环操作
源代码图片
图片:
源代码
def fun1(a):
b = []
c = str(a)
for i in c:
b.append(int(i))
c = 0
d = len(b)
for j in b:
c += (j**d)
if c == a:
print ("yes")
else:
print("no")
while True:
b = input ("Would you like to try?(please input y/n): \n")
if b == "n":
break
else:
print("\n")
a = input("please input a number: \n")
fun1(int(a))
详细讲解
1、由于input()函数中输入的都是字符串,所以在调用函数时需要使用int()函数将其转化为整数。
2、为了将个位十位等数字调出来,一般大家会采用%以及//进行操作(这是基础的方法一,希望大家可以掌握)。我在这里为大家提供了一种新的思路,(第一步)就是先将整数利用 str()函数转化为字符串,(第二步)再利用字符串可以进行迭代循环的特性,将其中每一个字符转化为整数再添加进列表中,(第三步)再在迭代循环中将各位数的次方和求出
(At last 嘻嘻~~)在进行对比就好啦
重点概要(敲黑板啦)
1、我们要熟练掌握python中字符串、整型、浮点数等可以转换的性质。尤其是字符串哦!
2、大家要对input函数输入得到字符串这一点牢牢记住,很多朋友会倒在这里。
3、大家对python中迭代循环可要好好使用,这可是python大爷比其他类C语言牛逼的一个点哦