题目:
如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个 回文串 。
字母和数字都属于字母数字字符。
给你一个字符串 s,如果它是 回文串 ,返回 true ;否则,返回 false 。
题解:
1.使用isalnum()来判断字符是否不是符号,从而得到无符号的字符串(是符号则返回False,是数字或字母返回True,仅用于字符串的校验)
2.对新的字符串进行全小写处理(lower()方法),处理后进行反串,比较反串后与反串前的字符串是否相等即可
isalnum()方法:https://www.runoob.com/python/att-string-isalnum.html
代码:
class Solution(object):
def isPalindrome(self, s):
"""
:type s: str
:rtype: bool
"""
if s =='':
return True
t = ''
for i in s:
if i.isalnum():
t+=i
t = t.lower()
#反串
s = t[::-1]
if s==t:
return True
return False