⚡️ Модуль collections. Класс OrderedDict
Мы уже рассказывали про модуль collections, а если конкретнее — класс Counter. В этот раз разберём OrderedDict.
OrderedDict — словарь, особенный тем, что все ключи находятся в том же порядке, в котором и добавлялись.
Подробнее о данном классе можете почитать тут.
#миниурок #collections
Мы уже рассказывали про модуль collections, а если конкретнее — класс Counter. В этот раз разберём OrderedDict.
OrderedDict — словарь, особенный тем, что все ключи находятся в том же порядке, в котором и добавлялись.
popitem()
— Возвращает и удаляет последний элемент из упорядоченного списка. move_to_end(key)
— перемещает ключ в конец. Если передан параметр last, перемещает ключ в начало.Подробнее о данном классе можете почитать тут.
#миниурок #collections
⚡️ Модуль collections. Класс deque
Раннее мы писали про Counter и OrderedDict, настало время поговорить про deque.
deque — класс, предоставляющий двойную очередь (то есть элементы можно брать и с начала и с конца). Его основное преимущество над списком — скорость при изменении размера. Добавление и удаление элементов имеет O(1), а у списка — O(n).
#миниурок #collections
Раннее мы писали про Counter и OrderedDict, настало время поговорить про deque.
deque — класс, предоставляющий двойную очередь (то есть элементы можно брать и с начала и с конца). Его основное преимущество над списком — скорость при изменении размера. Добавление и удаление элементов имеет O(1), а у списка — O(n).
append(x)
, appendleft(x)
— добавляет элемент в конец/начало.pop()
, popleft()
— возвращает и удаляет элемента с конца/начала очереди.rotate(n=1)
— перемещает n объектов с конца в начало очереди#миниурок #collections
⚡️ Модуль collections. Тип namedtuple
Часто, используя кортежи, мы берём значения с помощью индексаторов (квадратных скобочек), что выглядит не особо красиво и совсем непонятно для другого программиста.
Чтобы исправить эту проблему, Python разработчики придумали namedtuple, который предоставляет тип кортежа, в котором данные можно получить как атрибуты.
#миниурок #collections
Часто, используя кортежи, мы берём значения с помощью индексаторов (квадратных скобочек), что выглядит не особо красиво и совсем непонятно для другого программиста.
Чтобы исправить эту проблему, Python разработчики придумали namedtuple, который предоставляет тип кортежа, в котором данные можно получить как атрибуты.
namedtuple(typename, field_names)
— создаёт тип кортежа с именем typename
и атрибутами field_names
, и возвращает тип.#миниурок #collections
⚡️ Модуль collections
Это изменённые контейнеры (dict, list, set, tuple), которые могут сильно помочь при решении задач.
#миниурок #collections
Это изменённые контейнеры (dict, list, set, tuple), которые могут сильно помочь при решении задач.
Counter(iter)
— подсчитывает количество повторений объекта в iter. С помощью most_common(n)
можно получить n самых повторяющихся объектов.defaultdict(default_factory)
— создаёт и подставляет новый объект, созданный default_factory, если не переданного ключа не существует.namedtuple(typename, field_names)
— Создаёт тип кортежа с именованными полями.#миниурок #collections
👍1