从无限循环python中提取模式

2024-04-20 01:01:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个无限循环,每个循环给我一个字符串。我知道给定的字符串遵循一种模式。我需要得到这个模式,并将循环表示为一个公式。你知道吗

让我们用一个例子来更好地了解它:

1-“126”

2-“1236”

3-“12346”

4-“1234526”

5-“12345236”

6-“123452346”

7-“12345234526”

8-“123452345236”

9-“1234523452346”

。。。你知道吗

如您所知,循环模式可以表示为:

  • "1(A*n)26"
  • "1(A*n)236"
  • "1(A*n)2346"

A="2345"n一个从0到无穷大的数。你知道吗

我已经写了这段代码,但我不知道它是否是最优化的代码,或者在边缘情况下是否会失败:

def find_repeated(s):
    for j in range(len(s)):
        for i in range(j):
            if s[i:j] == s[j:2*j - i]:
                return s[i:j]

干杯


Tags: 字符串代码inforlenifdef模式