Создание нового списка по индексу и значению

MarSam

Новичок
Пользователь
Сен 26, 2021
2
0
1
Написать функцию list_compose, которая принимает два списка (INDEX_LIST, VALUE_LIST).
Составить новый список: берем индекс из списка индексов, и вставляем значение по этому
индексу из другого списка. Если значения нет, что вставить None

ПРИМЕРЫ
--------------------------------------------------------------------------------
list_compose(INDEX_LIST, VALUE_LIST) -> ['b', 'f', None, None, 'c', 'd', None, 'e']
"""
INDEX_LIST = [1, -1, 6, -12, 2, 3, 9, 4]
VALUE_LIST = ['a', 'b', 'c', 'd', 'e', 'f']


def list_compose(indexes: list, values: list) -> list:
result_list = []

for i in indexes:
if i >= len(values):
result_list = indexes.append(values)
else:
print('None')
i += 1
return result_list


if __name__ == '__main__':
assert list_compose(INDEX_LIST, VALUE_LIST) == ['b', 'f', None, None, 'c', 'd',
None, 'e']
print('Решено!')


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

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 589
459
83
код вставляйте как код, соблюдая отступы, подробнее тут как задать вопрос

можно так
Python:
INDEX_LIST = [1, -1, 6, -12, 2, 3, 9, 4]
VALUE_LIST = ['a', 'b', 'c', 'd', 'e', 'f']


def list_compose(indexes: list, values: list) -> list:
    result_list = []
    for i in indexes:
        try:
            result_list.append(values[i])
        except IndexError:
            result_list.append(None)
    return result_list


if __name__ == '__main__':
    assert list_compose(INDEX_LIST, VALUE_LIST) == ['b', 'f', None, None, 'c', 'd', None, 'e']
    print('Решено!')
 
  • Мне нравится
Реакции: Student

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 589
459
83
при копировании они потерялись почему-то
потому что код нужно вставлять через теги code, подробнее тут как задать вопрос
в обычных сообщениях отступы убираются
 

MarSam

Новичок
Пользователь
Сен 26, 2021
2
0
1
regnor, спасибо!(y) отступы соблюдаю конечно, при копировании они потерялись почему-то. теперь работает... а я столько накрутила...
 

Форум IT Специалистов