我正在使用使用 for 循环构建的回文检测器(这是我参加的课程的要求)。
我几乎完全完成了它,但我无法返回一个参数并在最终函数中使用它。代码如下所示:
#-*- coding: utf-8 -*-
def main():
intro()
text = (input("Inser text here: "))
ordnaText(text)
testPalindrom(ordnaText(text))
showResult(testPalindrom)
def intro():
print ("Hej! Detta är ett program som testar ifall en text är ett palindrom eller inte.")
def ordnaText (text):
nytext = ("")
fixedText = text.lower()
for i in fixedText:
if i.isalnum():
nytext = (nytext + i)
return nytext
def testPalindrome(nytext):
palindrome = True
for i in range (0, len(nytext)):
if (nytext[i]) != (nytext[len(nytext)-i-1]):
palindrome = False
return palindrome
def showResult(palindrome):
if palindrome == True:
print ("Yes, this is a palindrome")
else:
print ("No, this is not a palindrome.)
main()
除了最后一部分外,一切正常:如果我输入回文“lol”,则表示它是错误的。“回文”不知何故无法正确返回。我究竟做错了什么?