使用 python3 检查字符串是否为有效回文
Checking a string if it is a valid palindrome or not using python3
class Solution:
def isPalindrome(self, s: str) -> bool:
string=''
ss=s.lower()
for x in ss:
if x.isalnum():
string.join(x)
bol= string == string[::-1]
return bol
str_1="A man, a plan, a canal: Panama"
str_2="race a car"
对于 str_1 代码工作正常(输出为 TRUE)但是对于 str_2 也输出为 TRUE 但它不是回文。
我不明白我的代码中有什么错误。
试试这个:
class Solution:
def isPalindrome(self, s: str) -> bool:
string=""
ss=s.lower()
string = ''.join(x for x in ss if x.isalnum())
bol= string == string[::-1]
return bol
输出:
#for str_1
True
# for str_2
False
因为您不会在每次加入字符串时都进行保存。
class Solution:
def isPalindrome(self, s: str) -> bool:
string=''
ss=s.lower()
for x in ss:
if x.isalnum():
string += ''.join(x) # Remember to save the new added character
bol= string == string[::-1]
return bol
给定一个字符串,编写一个python函数来检查它是否是回文。如果字符串的反转与字符串相同,则称该字符串是回文。比如“radar”是回文,“radix”不是回文。
def isPalindrome(s):
return s == s[::-1]
# Driver code
s = "hello"
ans = isPalindrome(s)
if ans:
print("Yes")
else:
print("No")
class Solution:
def isPalindrome(self, s: str) -> bool:
string=''
ss=s.lower()
for x in ss:
if x.isalnum():
string.join(x)
bol= string == string[::-1]
return bol
str_1="A man, a plan, a canal: Panama"
str_2="race a car"
对于 str_1 代码工作正常(输出为 TRUE)但是对于 str_2 也输出为 TRUE 但它不是回文。 我不明白我的代码中有什么错误。
试试这个:
class Solution:
def isPalindrome(self, s: str) -> bool:
string=""
ss=s.lower()
string = ''.join(x for x in ss if x.isalnum())
bol= string == string[::-1]
return bol
输出:
#for str_1
True
# for str_2
False
因为您不会在每次加入字符串时都进行保存。
class Solution:
def isPalindrome(self, s: str) -> bool:
string=''
ss=s.lower()
for x in ss:
if x.isalnum():
string += ''.join(x) # Remember to save the new added character
bol= string == string[::-1]
return bol
给定一个字符串,编写一个python函数来检查它是否是回文。如果字符串的反转与字符串相同,则称该字符串是回文。比如“radar”是回文,“radix”不是回文。
def isPalindrome(s):
return s == s[::-1]
# Driver code
s = "hello"
ans = isPalindrome(s)
if ans:
print("Yes")
else:
print("No")