检查输入是否为回文的代码始终返回True

时间:2015-12-08 23:36:03

标签: python python-2.x

我的代码才真正回归......

import string

def palendrone():
    input = raw_input('give us some stuff and we will see if it is a palendrone;')
    lowercase = string.lower(input)
    new_string = ''
    markList = [".", " ", ";", ":", "!", "?", "/", "," , "#", "@", "$", "&", ")", "(", "\", '*', '^'"]

    for mark in (lowercase):
        if mark in lowercase:
            new_string += ''

    backwards_string = new_string[::-1]
    print backwards_string
    print new_string

    return backwards_string == new_string

基本上,如果短语是回文,则代码应返回true;如果不是,则返回false ...但它始终返回true。

1 个答案:

答案 0 :(得分:1)

您的计划正在返回True,因为上次检查始终为'' == ''

new_string为空,所有添加到其中的是另一个空字符串''。然后,您也将backwards_string分配给''

您的代码还存在其他问题,但由于您没有寻找完整的解决方案,请尝试逐行检查并询问您自己的实际情况。例如,markList看起来多余。