Вопрос о получении строки, соответствующей условию, и о запуске нового поиска с того места, где было выполнено условие.
У меня есть упорядоченный список городов, и я хочу извлечь по одной строке для каждой буквы алфавит, каждый новый поиск начинается с места предыдущего поиска.
Какой общий подход является лучшим? Для строк, следующих за «А», мне нужно сравнивать индексы результатов или создавать словарь? например, в Python, могу ли я продолжить поиск из указанного c местоположения в списке?
# Ordered list of towns
towns = ['The Gord', 'Wilna Geo', 'The Framd', 'The Fild', 'Iron Geo', 'Brim Ness', 'RRH Saxa Vord', 'Houll', 'Skaw', 'Norwick', 'Burrafirth', 'Saxa Vord']
alpha = []
for elem in towns[:]:
if str(elem).startswith("A"):
alpha.append(elem)
break
# new search starting from position where 'A' was true; return next value starting with 'B' -
if str(elem).startswith("B"):
alpha.append(elem)
# Continue with the rest of the letters
return alpha
Как бы вы концептуализировали то, что я пытаюсь достичь?
Кроме Python, какой фреймворк лучше подходит для моих нужд, например SQL, R, другое?