预期类型为'int'但返回类型为'NoneType'。“

时间:2018-04-10 22:21:34

标签: python-3.6 nonetype

我必须编写一个 python 函数,该函数将两个单行字符串作为输入并返回两者之间出现第一个差异的索引(如果它们相同则返回负数) )。这是我到目前为止编写的代码:

currency

2 个答案:

答案 0 :(得分:0)

def singleline_diff(line1, line2):

    min_len = min(len(line1), len(line2))
    for i in range(min_len):
        if line1[i] != line2[i]:
            return i

    if min_len == len(line1) and min_len == len(line2):
        return -1      # they're identical
    return min_len     # one of the two lines has terminated, hence they differ

答案 1 :(得分:0)

如果line1!= line2,你的代码会将整数打印到控制台而不是返回值,这是根据文档应该做的。请尝试使用return diff_idx_2代替print(diff_idx_2)(对于diff_idx_1也是如此)。