例如输入2,打印121;输入5,输出123454321。请问该怎么实现呢
#提示用户输入数字,大于等于1、小于等于9的正整数
num = int(input('输入一个正整数 [1,9] :'))
#创建回文片段,从数字1一直数到所给数字前的一个数,构成回文片段列表
part = [str(i) for i in range(1,num)]
#通过sorted(list, reverse=True)反转列表,形成[回文片段+所给数字+回文片段反转]的回文数列表,并转换为整数型数据
result = int(''.join(part + [str(num)] + sorted(part, reverse = True)))
#输出回文数
print(f'回文数:{result}')
简介:使用计数循环、数据转换和列表解析式搭建回文数。
步骤:分为四个步骤。
1)第一步,提示用户输入数字。根据回文数特点,要求该数字是大于等于1、小于等于9的正整数;
2)第二步,采用range函数和for循环结合的形式创建回文片段,由从数字1一直到所给数字的前一个数,构成回文片段列表;
3)第三步,通过sorted(list, reverse=True)方法反转回文片段列表,形成[回文片段+所给数字+回文片段反转]的回文数列表,并将其转换为整数型数据。
4)第四步,输出回文数到控制台。
不知道你这个问题是否已经解决, 如果还没有解决的话:示意图:
num=input("请输入一组数:")
for i in range(len(num)-1,-1,-1):
print(num[i],end="")
结果: