程序依然很简单,不过比之前发的那个要复杂一点,用了递归,求反转后的字符串。
适合让中小学感兴趣的孩子学习。
问题:abcde*4=edcba
代码:
#反转字符串
def reverse2(s):
if s=="":
return s
else:
return reverse2(s[1:])+s[0]
#从11111开始,到小于25000 之间的取值范围
for x in range(11111,25000):
si=4*x
#str 把数字变成字符串
if(str(x)==reverse2(str(si))):
print (x)
reverse2(s) reverse2 函数名 s 参数 (想要反转的字符串)
s[1:])+s[0] 比如说s =abcdef 那么s[1:]= bcdef 第一位之后所有内容, s[0]=a
return reverse2(s[1:])+s[0] 递归是在函数之内调用函数, 直到 最小的s=="":
运行结果:
21978