乐闻世界logo
搜索文章和话题

实现一个函数,判断输入是不是回文字符串

浏览15
6月24日 16:43

回文字符串是一个正向和反向都相同的字符串。比如 "madam" 或者 "racecar" 就是回文字符串。

以下是一个用Python编写的简单函数,用于检测一个字符串是否是回文:

python
def is_palindrome(s): # 首先,我们将字符串转为小写,并移除非字母字符 clean_s = ''.join(c for c in s.lower() if c.isalnum()) # 然后我们比较字符串与其翻转后的版本是否相同 return clean_s == clean_s[::-1]

在这个函数中,我们首先将输入字符串转换为全部小写,并且移除了所有非字母和非数字字符,这样我们就能只关注字母和数字,忽略掉标点和空白。然后我们简单地将处理过的字符串与其自身的倒序版本进行比较,来判断它是否是回文。

让我们用一些例子来测试这个函数:

python
print(is_palindrome("Madam")) # 应该输出: True print(is_palindrome("racecar")) # 应该输出: True print(is_palindrome("hello")) # 应该输出: False print(is_palindrome("A man, a plan, a canal, Panama")) # 应该输出: True

在最后一个例子中,尽管原始字符串包含了空格和标点符号,但是在我们的 is_palindrome函数中,这些字符都被移除了,所以最终验证的字符串是"amanaplanacanalpanama",这是一个回文字符串。

标签:JavaScript算法