如何使用Python检查字符串是否是回文

本文概述

  • 使用不直观的语法
  • 使用易于阅读的语法
如果我们从头到尾阅读字符串, 则该字符串就是回文, 它与begin到末尾相同。在编程中检测单词是否回文的逻辑非常简单, 你需要基本还原字符串并将其与原始字符串进行比较。如果字符串相等(过滤后的字符串和反向的过滤后的字符串), 那么该字符串就是回文, 很容易吧?在本文中, 我们将向你展示如何通过Python函数轻松遵循上述逻辑。
使用不直观的语法【如何使用Python检查字符串是否是回文】语法不太容易理解的逻辑是使用[::-1]切片语法反转字符串并将其与原始字符串进行比较:
myString = "eye"# Prints in this case "Is Palindrome"if str(myString) == str(myString)[::-1]:print "Is Palindrome"else:print "Is not Palindrome"

Python的str()方法将变量类型强制为字符串, 因此给定的参数将是一个字符串, 你可以将其与另一个字符串进行比较, 并使用[::-1]语法进行反转, 该语法与以下相同:
myString = str("eye")# Prints in this case "Is Palindrome"if myString == myString[::-1]:print "Is Palindrome"else:print "Is not Palindrome"

另外, 你可以创建具有相同逻辑的方法:
def isPalindrome(myString):return myString == myString[::-1]

使用易于阅读的语法如果你不喜欢以前的语法, 则可以使用相反的Python方法遵循相同的逻辑:
myString = str("eye")# Prints in this case "Is Palindrome"if myString == ''.join(reversed(myString)):print "Is Palindrome"else:print "Is not Palindrome"

编码愉快!

    推荐阅读