Рубрики
Без рубрики

Коллекции Python

Коллекции Python, Python Collectiondict, python defaultdict, python nameedtuple, python deque, counter python, модуль коллекции python, collections counter python, модуль коллекции в Python, учебник

Автор оригинала: Pankaj Kumar.

Модуль коллекции Python поставляется с рядом типов данных контейнера. Эти типы данных имеют разные возможности, как мы узнаем в этом посте. Давайте учимся о модуле коллекции Python, и он наиболее важных и широко используемых типов данных.

Модуль коллекции Python

Коллекции, которые мы будем учиться в модуле коллекции Python:

  • Упорядоченный
  • по умолчанию
  • прилавок
  • NamedTuple.
  • уход

Давайте начнем.

1. ЗаказДикт

С ЗаказДикт Порядок вставки поддерживается, когда ключ и значения вставляются в словарь. Если мы попробуем снова вставить ключ, это перезапишет предыдущее значение для этой клавиши.

Вот образец программы для демонстрации использования ЗаказДикт :

from collections import OrderedDict

roll_no = OrderedDict([
    (11, 'Shubham'),
    (9, 'Pankaj'),
    (17, 'JournalDev'),
])

for key, value in roll_no.items():
    print(key, value)

Давайте увидим вывод для этой программы: обратите внимание, что выходной порядок был точно таким же, как порядок введения.

2. по умолчанию DICK

Словарь по умолчанию может содержать дублированные клавиши. Преимущество использования словаря по умолчанию заключается в том, что мы можем собирать предметы, которые принадлежат к одному ключу. Давайте посмотрим на фрагмент кода, который демонстрирует то же самое:

from collections import defaultdict

marks = [
    ('Shubham', 89),
    ('Pankaj', 92),
    ('JournalDev', 99),
    ('JournalDev', 98)
]

dict_marks = defaultdict(list)

for key, value in marks:
    dict_marks[key].append(value)

print(list(dict_marks.items()))

Давайте посмотрим на вывод этой программы: Ключ Journaldev использовали два раза и значения для того же, что было собрано, как только мы напечатали словарь.

3. Счетчик

Сборные коллекции позволяют нам сохранить количество всех предметов, которые вставляются в коллекцию с ключами. Вот образец программы, чтобы показать, как она работает:

from collections import Counter

marks_list = [
    ('Shubham', 89),
    ('Pankaj', 92),
    ('JournalDev', 99),
    ('JournalDev', 98)
]

count = Counter(name for name, marks in marks_list)
print(count)

Давайте посмотрим на вывод этой программы: таким образом, мы смогли подсчитать количество раз, когда появились ключ в списке.

4. назван кортеж

Как мы уже знаем, кортежи Python являются неизменными списками. Это означает, что значение не может быть передано ключу, которое Arady существует в кортеже. Во-первых, давайте посмотрим, как можно сделать кортеж в Python:

shubham = ('Shubham', 23, 'M')
print(shubham)

Давайте посмотрим на вывод этой программы: мы можем преобразовать этот кортеж в названный кортеж, назначив имя для всех значений, присутствующих в этом кортеже. Это даст намного больше контекста для присутствующих данных:

import collections

User = collections.namedtuple('User', 'name age gender')
shubham = User(name='Shubham', age=23, gender='M')
print(shubham)

print('Name of User: {0}'.format(shubham.name))

Выход для этой программы будет: Посмотрите, как мы можем получить доступ к свойствам именованного кортежа с именем, который мы предоставляем. Также помните, что Ключевые имена не могут быть ключевые слова Python Отказ

5. УК

DECE – это двусторонняя очередь, которая позволяет нам добавлять и удалять элементы с обоих концов. Это усиливает возможности стека или очереди. Вот образец программы:

import collections

name = collections.deque('Shubham')
print('Deque       :', name)
print('Queue Length:', len(name))
print('Left part   :', name[0])
print('Right part  :', name[-1])

name.remove('b')
print('remove(b):', name)

Давайте увидим вывод для этой программы: Итак, наполнение элементов было сделано автоматически. Мы также можем вставлять элементы в нанесение на определенный конец. Давай попробуем:

import collections

name = collections.deque('Shubham')
print('Deque       :', name)

name.extendleft('...')
name.append('-')
print('Deque       :', name)

Давайте посмотрим на вывод этой программы:

Заключение

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

Ссылка: API док