首先,我们求回文数,那就应该要先明白,怎么样的数才是回文数。
我们来看看百度百科是怎样解释的:
简单来说,回文数就是正着读和反着读都是一样的,比如101,202等。
搞清楚什么是回文数了,那我们如何用Python来验证回文数呢?
因为回文数是反着读和正着读都是一样的,所以我们把一个整数倒过来,然后再对比之前的数不就知道是否是回文数了吗
搞清楚这一点,那我们就开始吧
1、用for循环和while循环求100到10000回文数
首先我们先用for循环把100到10000的数遍历一遍,然后再用while循环对遍历出来的数进行判断:
for i in range(100, 10001): #range(start,end,scan) 这个函数能产生一组list,因为不包含end,所以写的10001
x = i #把最开始的值保存下来,跟反转过来的数进行对比
sum = 0
while(i):
sum = sum * 10 + i % 10 #反转整数位
i //= 10 #这里小数点往左移一位并去掉小数部分
if sum == x:
print(str(x) + "是回文数") #输出回文数
这一个方法是比较麻烦的,我们换另外一种简单的方法
2、直接把整数变为字符串进行反转,然后比较是否相同
for i in range(100, 10001):
if str(i) == str(i)[::-1]: #str[::-1]直接反转字符串
print(str(i) + "是回文数")
这个方法是不是特别简单,学会了吗?
学会了那就赶快去试试吧,可以改一下代码,实现让我们输入一个数,然后判断是否是回文数哦