python编写程序,实现回文数判断,要求加入异常捕获语句使用递归函数、
时间: 2024-11-22 22:44:04 浏览: 0
Python实现回文数判断与拓展功能介绍
在Python中,你可以通过编写一个递归函数来判断一个数是否是回文数。回文数是指从前往后读和从后往前读都一样的数字。为了加入异常处理,我们需要考虑输入可能是非整数的情况。下面是一个示例:
```python
def is_palindrome(n, reversed_num=None):
# 如果已经翻转到了0或者n,说明是回文数
if reversed_num is None:
reversed_num = int(str(n)[::-1]) # 将数字翻转
elif n == reversed_num:
return True
try:
# 如果当前位不匹配,则不是回文数
if n % 10 != reversed_num % 10:
return False
# 递归检查剩余部分
return is_palindrome(n // 10, reversed_num // 10)
except TypeError: # 捕获非整数类型的异常
print(f"Error: 输入{n}应为整数.")
return False
# 使用示例
num = input("请输入一个整数:")
try:
num = int(num)
result = is_palindrome(num)
if result:
print(f"{num}是回文数。")
else:
print(f"{num}不是回文数。")
except ValueError:
print("错误:输入无效,请输入一个整数。")
阅读全文