最长公共前缀仅在字符串中给出0索引

时间:2018-12-06 12:39:51

标签: python

我正在使用此函数来获取两个字符串中最长的公共前缀,我在python 2.7.13版本上工作,但该函数仅给我0索引。

def longestcommonPrefix(s1, s2):
i = 0
while i < len(s1) and i < len(s2) and s1[i] == s2[i]:
    i += 1
    return s1[:i]
longestcommonPrefix("ACCATGT", "ACCAGAC")

2 个答案:

答案 0 :(得分:1)

另一种解决方案可解决您的语法/缩进问题。还请注意,标准库中已经存在此功能:

template <typename T>
struct member_variable {
    template <typename U>
    auto operator=(const U& u)
    -> decltype(as_expression(u), void())
    {/*...*/}
};

答案 1 :(得分:0)

我使用Python 2.7.13遍历了代码。可能您只需要正确缩进代码即可。请参见下面的工作示例:

def longestcommonPrefix(s1, s2):
    i = 0
    while i < len(s1) and i < len(s2) and s1[i] == s2[i]:
        i += 1
    return s1[:i]

test = longestcommonPrefix("ACCATGT", "ACCAGAC")