博主先在开头声明清楚,博主下面说的**重数是指重复的数(主要找了一会都没发现这叫啥,以前有人给我说这是水仙花,查了一下发现不是说)**不然有开始学的小可爱好不容易看完代码发现不是自己要的类型。 因为自己教自己女朋友写python练逻辑时记得的一个逻辑训练,在加上博主快毕业了也有自己的小学弟学妹,所以才顺手写这篇博客看能给新学的小可爱们一点帮助。 首先我们要实现的需求为取一个0-n的数,判断这个数n>=2时,他每一位数如果完全相等就打印下来,也是就是把22,222,4444。。。这样的数找出来。 当然方法还有很多,博主这里突然想到做水仙花时候用的字符下标判断,所以博主用的是字符下标判断的方法来做的。
下面展示一波代码 。
for item in range(1,1001):
Currentnumber = str(item)
state = ''
if len(str(Currentnumber)) < 2:
print('不是重数,重数是至少>=2',Currentnumber)
else:
valve = True
for itme in range(int(len(Currentnumber) - 1)):
if Currentnumber[itme] == Currentnumber[itme + 1] and valve == True:
state = '是重数'
valve = True
else:
state = '不是重数'
valve = False
print(state,Currentnumber)
运行结果如下所示 博主这里做的是1-1000数的判断,同理三位数五位数就是改一下for的取值范围而已
|