Задача — получить уникальный список подстрок в Python.
Сейчас я использую разбиение задачи на 2 части: получить список всех подстроки с последующим получением уникальных подстрок.
Я использую приведенный ниже код:
Код: Выделить всё
substrings=[]
for i in range(0,len(inputstring)+1):
for j in range(i+1,len(inputstring)+1):
substr=inputstring[i:j]
substrings.append(substr)
uniq=[]
for ss in substrings:
if ss not in uniq:
uniq.append(ss)
Есть ли более быстрый способ решить эту проблему или так называемый Python-способ сделать это более гибким способом />простой пример строки? : "отец", возможные подстроки: [a,a,b,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a ,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а ,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а ,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а,а ,a ,father], уникальная подстрока, которая желательна в конце [a,b,aa,ab,ba,ba,ba,ba,ba,ba,ba,ba,ba,ba,ba,ba,ba,ba ]
Подробнее здесь:
https://stackoverflow.com/questions/571 ... ven-string