如何在Python中递归比较两个字符串?

时间:2018-11-21 05:18:01

标签: python-3.x

嗨,这确实很容易以非递归方式进行,但是我如何比较两个字符串以查看它们在Python中是否相等?也就是说,如果我进行了编译,它将返回0,如果进行了编译和对比,它将返回1?

2 个答案:

答案 0 :(得分:0)

首先,我们使用def compare(a,b)在python中进行比较。 返回等于等于0的值,等于> 1返回1的值,返回-1

答案 1 :(得分:0)

好吧,让我们看看。我知道您知道如何重复执行此操作,但是明确将其写出也无妨:

def iterative_string_comparison(str1, str2):
    for char1,char2 in zip(str1, str2):
        if char1 != char2:
            return 1
    return 0

您实际上在这里做什么?您正在遍历两个字符串中的每个字符,并进行比较以确保它们具有相同的值。

您将如何递归执行此操作?我将从伪代码开始。

function recursive_string_comparison(str1, str2, index)
    if str1[index] != str2[index]
        return 1
    else
        if the index exceeds the length of either string
            return 0
        else
            return recursive_string_comparison(str1, str2, index + 1)

这只是一个提示,如果您进行校对以确保它易于理解您的要求,那么将来回答您的问题可能会获得更大的成功。