Python代码阅读(第72篇):回文
2021-11-03 本文已影响0人
FelixZzzz
Python 代码阅读合集介绍:为什么不推荐Python初学者直接看项目源码
本篇阅读的代码实现了判断一个字符串是否为回文的功能(忽略特殊字符和大小写)。
本篇阅读的代码片段来自于30-seconds-of-python。
palindrome
from re import sub
def palindrome(s):
s = sub('[\W_]', '', s.lower())
return s == s[::-1]
# EXAMPLES
print(palindrome('taco cat')) # True
palindrome
函数输入一个字符串,返回True
,如果字符串是回文;返回False
,如果字符串不是回文。
函数先使用s.lower()
将字符串转换成小写。再使用正则表达式'[\W_]'
将输入字符串中的特殊符号替换成空字符串''
。最后将字符串倒序后与倒序前相比较,相等,则原字符串是回文;不相等,则不是回文。
re.sub(pattern, repl, string, count=0, flags=0)
返回通过使用repl
替换在string
最左边非重叠出现的pattern
而获得的字符串。 如果样式没有找到,则不加改变地返回string
。