给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。
说明:本题中,我们将空字符串定义为有效的回文串。
示例 1:
输入: "A man, a plan, a canal: Panama" 输出: true
示例 2:
输入: "race a car" 输出: false
s.isdigit()、s.isalpha()、s.isalnum判断是否为数字、字母、数字或字母。
s.islower()、s.isupper()判断是否为大小写
s.lower()、s.upper()转换大小写
class Solution:
def isPalindrome(self, s):
"""
:type s: str
:rtype: bool
"""
if(len(s) == 0 or len(s) == 1): return True
string = []
for char in s:
if(char.isalnum()):
string.append(char.lower())
length = len(string)
for i in range(0, length// 2):
if(string[i] != string[length - i - 1]):
return False
return True