Python 回文检查器

使用 Python 切片检查字符串或数字是否为回文(向后读与向前读相同)。

在编辑器中尝试

概述

回文是在两个方向上读取相同的字符或数字序列,忽略空格、标点符号和大写。

Python 字符串支持切片,这允许我们使用“[::-1]”创建反向副本。这使得回文检查极其简洁。

对于数字,我们可以先将值转换为字符串,或者使用数学循环以相反的顺序重建数字。

代码和执行输出

验证多个字母数字字符串和数值的回文对称性。

def is_palindrome(val):
    s = str(val).lower().replace(" ", "")
    return s == s[::-1]

test_inputs = [121, 12321, "radar", "Python", "A nut for a jar of tuna"]
for item in test_inputs:
    status = "Palindrome" if is_palindrome(item) else "Not Palindrome"
    print(f"'{item}' -> {status}")
端子输出
'121' -> Palindrome
'12321' -> Palindrome
'radar' -> Palindrome
'Python' -> Not Palindrome
'A nut for a jar of tuna' -> Palindrome

逐步实施

  • 文字拼图和文字游戏开发
  • DNA序列模式匹配算法
  • 技术面试筛选挑战

常见问题解答

如何在不将数字转换为字符串的情况下检查回文?

您可以使用 % 和 // 从右向左提取数字,重建反转后的数字,并检查它是否与原始数字匹配。

相关主题