我发现另外两篇帖子询问有关堆栈溢出的错误,但答案在提供相关解决方案方面并不是很有帮助。我刚刚开始学习python并且正在尝试制作一个回文测试器,但我希望它能从输入中删除所有标点符号。我一直在标题中得到错误,我不知道如何解决它。这是我的代码:
while 1:
def reverse(text):
return text[::-1]
def eliminate_punc(para):
para = para[:]
forbidden = ('.','?','!',':',';','-','—-','()','[]','...',"'",'"','/',',',' ')
for item in para:
for sign in forbidden:
if item == sign:
para.remove(item)
return para
def is_palindrome(words):
text = eliminate_punc(words)
return text == reverse(text)
user_input = input("Enter text: ")
if user_input == "quit":
break
if is_palindrome(user_input):
print("\nYes, this is a palindrome")
else:
print("\nNo, this is not a palindrome")
print("\nWrite 'quit' to quit the program\n")
请帮忙。提前谢谢。