如何解决使用过滤器和 lambda
我不明白为什么函数 plnd
返回正确的结果而 plnd_v
没有。
也许这里有人可以解释幕后发生的事情。 检查的句子是:
sen = "A man,a plan,a canal: Panama"
这是一个回文。
def plnd(a):
filtered_rev = filter(lambda x: x.isalnum(),sen)
lower_rev = map(lambda x: x.lower(),filtered_rev)
rev = ''.join(lower_rev)[::-1]
print(len(rev))
filtered = filter(lambda x: x.isalnum(),sen)
lower = map(lambda x: x.lower(),filtered)
reg = ''.join(lower)
print(len(reg))
if rev == reg:
print(f"'{sen}' is a Palindrome! ")
else:
print("Not a palindrome")
def plnd_v(a):
filtered = filter(lambda x: x.isalnum(),filtered)
rev = ''.join(lower)[::-1]
reg = ''.join(lower)
if rev == reg:
print(f"'{sen}' is a Palindrome! ")
else:
print("Not a palindrome")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。