Строковое количество с перекрывающимися случаями

nunmpy.nan никогда не предполагалось поддерживать . Вот почему это не работает в Python 3

50
задан Georgy 18 October 2019 в 05:00
поделиться

3 ответа

Что ж, этот может быть быстрее, так как он выполняет сравнение в C:

def occurrences(string, sub):
    count = start = 0
    while True:
        start = string.find(sub, start) + 1
        if start > 0:
            count+=1
        else:
            return count
72
ответ дан 7 November 2019 в 10:35
поделиться
def occurance_of_pattern(text, pattern):
    text_len , pattern_len = len(text), len(pattern)
    return sum(1 for idx in range(text_len - pattern_len + 1) if text[idx: idx+pattern_len] == pattern) 
0
ответ дан 7 November 2019 в 10:35
поделиться
def count_overlaps (string, look_for):
    start   = 0
    matches = 0

    while True:
        start = string.find (look_for, start)
        if start < 0:
            break

        start   += 1
        matches += 1

    return matches

print count_overlaps ('abrabra', 'abra')
0
ответ дан 7 November 2019 в 10:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: