检查回文的奇偶性?

9 投票
8 回答
29543 浏览
提问于 2025-04-15 18:12

检查一个回文数字或字符串的长度是奇数还是偶数,这个主意好吗?我看到的大部分代码片段都没有做这个基本的检查。如果长度是偶数,那它就不可能是回文,对吧?

if len(var) % 2 != 0:
  # could be a palindrome, continue...
else:
  break

还是说直接比较第一个和最后一个数字或字母更好(也就是更快)呢?

编辑: 好吧,这个问题有点傻,应该多想想的! :)

8 个回答

8

baab 是一个回文,长度是4,正好是偶数。

10

检查一个字符串是否是回文的最简单方法,就是把这个字符串和它的反向字符串进行比较:

def ispalindrome(s):
   return s == s[::-1]

这里使用了扩展切片和负步长的方式,能够从后往前遍历字符串 s,从而得到它的反向字符串。

25

ABBA - 这是一个四个字母的例子,属于一种叫做回文的词,回文的特点是字母数量是偶数。

回文是指一个单词、短语、数字或其他字符的组合,无论是从前往后读还是从后往前读,都是一样的...

撰写回答