Как указать в генераторе списка несколько операций?

К примеру есть код:

n = 0
for a in index:
    # Операция №1
    term_list.insert(n,term[a])
    # Операция №2
    n += 1

И есть еще один код (генератор списка):

n = 0                      # Операция №1
term_list_Search = [term_list.insert(n,term[a]) for a in index]

По сути могут быть идентичны. Только вот как добавить во второй код, Операция №2, то есть 2 действия вместо одного?

Код целиком:

while True:
    term = input('| Введите выжарение: ')
    long_term = len(term)
    
    # В списке index хранится все индексы символов введеных пользователем
    index = []
    # Получаем индекс каждого введеного пользователем символа
    if long_term > 0:
        while long_term > 0:
            long_term = long_term - 1
            index.insert(0,long_term)
            print('| ',index)
    elif long_term == 0: 
        print('| Ошибка! Поле ввода пусто', '\n|')
        continue
    
    # В списке term_list хранятся все элементы строки введеной пользователем
    term_list = []
    # Записываем в список term_list все элементы строки введеной пользователем
    
    print('|\n|')
    n = 0
    for a in index:
        term_list.insert(n,term[a])
        n += 1
        print('| ',term_list)
    

Пример работы скрипта:

введите сюда описание изображения


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

Автор решения: MaxU

если я правильно понял логику вашего кода, то это можно сделать гораздо проще и понятнее:

term_list = [term[i] for i in index]

PS list.insert() - возвращает None, поэтому его не стоит использовать в списковых включениях, если не хотите получить список Nones

NOTE: примеры входных и выходных данных явно улучшили бы качество и понимание вопроса!

→ Ссылка