用while判断输入的数字是否回文数的简单实现



def is_palindrome(n):
    # 将数字转换为字符串以便反转和比较
    str_n = str(n)
    # 反转字符串
    reversed_n = str_n[::-1]
    # 比较原字符串和反转后的字符串
    return str_n == reversed_n

# 使用while循环来持续请求用户输入并检查是否为回文数
while True:
    try:
        # 尝试获取用户输入并转换为整数
        num = int(input("请输入一个数字来判断是否为回文数(输入非数字退出): "))
        # 判断是否为回文数
        if is_palindrome(num):
            print(f"{num} 是回文数。")
        else:
            print(f"{num} 不是回文数。")
    except ValueError:
        # 如果输入的不是数字,则打印消息并退出循环
        print("请输入一个有效的数字。")
        break

这段代码首先定义了一个`is_palindrome`函数,用于判断一个数字(实际上是通过将其转换为字符串来处理的)是否是回文数。然后,它使用了一个`while True`循环来持续请求用户输入,并检查输入的数字是否为回文数。如果用户输入的不是数字,则会捕获`ValueError`异常,并打印一条消息后退出循环。这样,用户就可以不断输入数字来检查它们是否是回文数,直到他们输入一个非数字的值来退出程序。