如何在python中检查单词是否回文

如何在python中检查单词是否回文,python,Python,我尝试了这一点,但得到了类似于回溯的错误(最近的一次呼叫): 这里如何处理数字?在使用数字之前,请先使用str()将单词转换为字符串。范例- File "Code", line 3, in isPalindrome TypeError: 'int' object has no attribute '__getitem__'. 如果word为int,它将转换为string。否则,如果它已经是字符串,它将保持为字符串 def isPalindrome(word): n1 = str(wor

我尝试了这一点,但得到了类似于回溯的错误(最近的一次呼叫):


这里如何处理数字?

在使用数字之前,请先使用
str()
将单词转换为字符串。范例-

File "Code", line 3, in isPalindrome
TypeError: 'int' object has no attribute '__getitem__'.
如果
word
为int,它将转换为string。否则,如果它已经是字符串,它将保持为字符串

def isPalindrome(word):
    n1 = str(word)
    n2 = str(word)[::-1]
    if n1 == n2 :
       return True
    else:
       return False
对阿南德回答(imho)的重写稍微好一点


注意:根据PEP 0008,python函数名应为小写字母,以下划线分隔,除非这违反了本地约定。(对于任何肮脏的Java程序员)

它可以扩展到测试一个句子:

def is_palindrome(s):
   s = str(s) 
   return s == s[::-1]

这是完全正确的代码???您要输入什么?n1是我们要输入的单词。其中,word[::-1]将给出n1的反方向。您的代码是正确的。您可能在函数调用过程中出错。您也可以提供函数调用代码吗?错误消息是
'int'对象…
。您可以控制输入参数吗?我将通过函数str()将其转换为字符串。您使用str()将int转换为字符串。工作正常。很高兴它能为您工作。如果答案是有帮助的,我想建议你接受一个答案(无论哪个答案对你有帮助),它将对社区有帮助。
def is_palindrome(s):
   s = str(s) 
   return s == s[::-1]
import re

def is_palindrome(sentence):
    sentence = re.sub(r'[^a-zA-Z0-9]','',str(sentence)).lower()
    return sentence == sentence[::-1]