首页 > 解决方案 > Python,检查两个字符串是否逐个字符相等

问题描述

def check_equal(a, b):
if len(a) > len(b):
    for i in range(0, len(a), 1):
        if a[i] != b[i]:
            return False
        else:
            return True
else:
    for i in range(0, len(b), 1):
        if a[i] != b[i]:
            return False
        else:
            return True

我不能让它比 a 和 b 的第一个字符更多。我哪里做错了?

标签: python

解决方案


这是您自己的代码,稍作修改。希望你觉得它有用。在这里,如果字符串的长度不等,那么比较它们是没有意义的。在这种情况下,您打印消息并简单地返回。否则,您将比较字符,如果任何字符不同,则return False继续检查下一个字符。一旦所有字符都相等,就打印出字符串相等。

def check_equal(a, b):
    if len(a) != len(b):
        print ("String lengths not equal")
        return
    else:
        for i in range(len(b)):
            if a[i] != b[i]:
                return False

    print ("Strings are equal and same")     

check_equal("Donald", "Donald") 
# Strings are equal and same  

check_equal("Donald", "Trump")    
# String lengths not equal

推荐阅读