2021-12-08 12:30:01
Разбор задачи: Комбинированный список из разных структурНедавно мы устраивали конкурс: кто лучше всех решит задачу Комбинированный список из разных структур на платформе IT Resume, тот и получит премиум-доступ к платформе.
Решений было много, все они отличались между собой, поэтому мы решили сделать разбор того варианта, который мы считаем правильным
Объединение данных из разных структур (кортежей, словарей, множеств и т.д.) - довольно распространенная задача. Для ее решения существует множество способов. Например, создать пустой список и в трех циклах по каждой структуре добавлять туда информацию.
Однако, очевидно, что это очень неоптимальный и «некрасивый» способ решения данной задачи.
Для «красивого» решения можно воспользоваться полезной фичей языка Python - распаковкой.
Операция распаковки (*) позволяет «вытащить» элементы из каждой структуры данных, избавившись тем самым от ограничения каждой из структур и получив просто «голые» элементы. Распаковав таким образом каждую структуру, остается только объединить все получившиеся элементы в один список.
Сделать это можно следующим образом:
class Answer:
def combine(self, A, B, C):
return [*A, *B, *C]
А каким способом вы бы решили эту задачу?
305 views09:30