Можно ли объединить итерации в один список в цикле for?

Есть вот такое задиние:

Вводится список названий городов в одну строчку через пробел. Перебрать все эти названия с помощью цикла for и определить, начинается ли название следующего города на последнюю букву предыдущего города в списке.

Если последними встречаются буквы 'ь', 'ъ', 'ы', то берется следующая с конца буква.

Вывести на экран ДА, если последовательность удовлетворяет этому правилу и НЕТ - в противном случае.

У меня вопрос: А можно ли объединить итерации в один список для дальнейшего сравнения? Что бы он выглядел вот так:

[ ['м', 'а'], ['а', 'н'], ['н', 'д'], ['д', 'д'], ['д', 'е'] ]
lst = ["москва", "астрахань", "новгород", "димитровград", "душанбе"]  # list(map(str, input().lower().split()))
a = []
for i in range(len(lst)):
    if True:
        a = list(lst[i].strip("ь, ъ, ы"))
        del a[1:-1]
        print(a)

Если это невозможно, тогда как решить ЭТО...?


Ответы (1 шт):

Автор решения: Dr Proger

Твой код отрабатывает почти правильно, нужно было лишь немного его изменить:

lst = ["москва", "астрахань", "новгород", "димитровград", "душанбе"]  
a = []
for i in range(len(lst)):    
    letter = list(lst[i].strip("ь, ъ, ы")) 
    a.append([letter[0],letter[-1]])
    print(a)

# Вывод: 
[['м', 'а'], ['а', 'н'], ['н', 'д'], ['д', 'д'], ['д', 'е']]
→ Ссылка