反转字符串与Python中的预期输出不匹配

时间:2018-04-04 06:03:00

标签: python-3.x python-2.7

我编写了一个python程序来反转字符串。 例如输入字符串是“我是人”,输出将是“namuH ma I”

我再次将输出传递给与输入相同的函数,以便输出与我们之前输入的字符串相同。

然后我尝试将给定的输入字符串与输出匹配,但它无法正常工作,请你帮忙。

程序:

def reverse(string):
    input_words=string.split(" ")
    temp=input_words[::-1]
    final=[]
    for i in temp:
        x=i[::-1]
        x=x.strip()
        final.append(x)

    output=" ".join(final)
    return(output)

if __name__ == "__main__":
    string="I am Human"
    print(reverse(string))
    output1=reverse(string)
    output2=reverse(output1)    
    print(string)
    print(output2)
    output2=output2.strip()
    if(output1 == output2):
        print("Its maching")
    else:
        print("\n \n there is some issue please check")

输出:

namuH ma I
I am Human
I am Human


 there is some issue please check

2 个答案:

答案 0 :(得分:1)

您正在将“namuH ma I”的输出1与我是人类的输出2进行比较

所以不明显不匹配。

还要注意一点,你使用output2.strip()来消除它上面的“空白字符” 详情请见:https://www.tutorialspoint.com/python/string_strip.htm

答案 1 :(得分:1)

output2变量的反向值始终为output1。很明显它不会匹配。

此行没有使用output2 = output2.strip()

你可能不会这样做:

if(string == output2):
    print("Its maching")
else:
    print("\n \n there is some issue please check")