Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Python

Питон — Словарь

Предыдущая страницаСледующая страница

Каждый ключ отделяется от его значения двоеточием (:), элементы разделяются запятыми, и все это заключено в фигурные скобки. Пустой словарь без каких-либо элементов записывается всего двумя фигурными скобками, например:{}.

Ключи уникальны в словаре, а значения могут быть разными. Значения словаря могут быть любого типа, но ключи должны иметь неизменяемый тип данных, например строки, числа или кортежи.

Доступ к значениям в словаре

Чтобы получить доступ к элементам словаря, вы можете использовать знакомые квадратные скобки вместе с ключом, чтобы получить его значение. Ниже приведен простой пример —

Живая демонстрация
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print "dict['Name']: ", dict['Name']
print "dict['Age']: ", dict['Age']

Когда приведенный выше код выполняется, он дает следующий результат —

dict['Name']:  Zara
dict['Age']:  7

Если мы попытаемся получить доступ к элементу данных с помощью ключа, который не является частью словаря, мы получим следующую ошибку —

Живая демонстрация
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print "dict['Alice']: ", dict['Alice']

Когда приведенный выше код выполняется, он дает следующий результат —

dict['Alice']:
Traceback (most recent call last):
   File "test.py", line 4, in <module>
      print "dict['Alice']: ", dict['Alice'];
KeyError: 'Alice'

Обновление словаря

Вы можете обновить словарь, добавив новую запись или пару ключ-значение, изменив существующую запись или удалив существующую запись, как показано ниже в простом примере —

Живая демонстрация
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
dict['Age'] = 8; # update existing entry
dict['School'] = "DPS School"; # Add new entry

print "dict['Age']: ", dict['Age']
print "dict['School']: ", dict['School']

Когда приведенный выше код выполняется, он дает следующий результат —

dict['Age']:  8
dict['School']:  DPS School

Удалить элементы словаря

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

Чтобы явно удалить весь словарь, просто используйте del утверждение. Ниже приведен простой пример —

Живая демонстрация
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
del dict['Name']; # remove entry with key 'Name'
dict.clear();     # remove all entries in dict
del dict ;        # delete entire dictionary

print "dict['Age']: ", dict['Age']
print "dict['School']: ", dict['School']

Это приводит к следующему результату. Обратите внимание, что возникает исключение, потому что после del dict словарь больше не существует −

dict['Age']:
Traceback (most recent call last):
   File "test.py", line 8, in <module>
      print "dict['Age']: ", dict['Age'];
TypeError: 'type' object is unsubscriptable

Примечание − Метод del() обсуждается в следующем разделе.

Свойства ключей словаря

Словарные значения не имеют ограничений. Они могут быть любыми произвольными объектами Python, как стандартными объектами, так и объектами, определенными пользователем. Однако это не относится к ключам.

Есть два важных момента, которые следует помнить о словарных ключах —

(а) Не допускается более одной записи на ключ. Это означает, что не допускается дублирование ключа. Когда во время назначения встречаются повторяющиеся ключи, последнее назначение выигрывает. Например —

Живая демонстрация
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'}
print "dict['Name']: ", dict['Name']

Когда приведенный выше код выполняется, он дает следующий результат —

dict['Name']:  Manni

(б) Ключи должны быть неизменяемыми. Это означает, что вы можете использовать строки, числа или кортежи в качестве ключей словаря, но что-то вроде ['key'] не разрешено. Ниже приведен простой пример —

Живая демонстрация
#!/usr/bin/python

dict = {['Name']: 'Zara', 'Age': 7}
print "dict['Name']: ", dict['Name']

Когда приведенный выше код выполняется, он дает следующий результат —

Traceback (most recent call last):
   File "test.py", line 3, in <module>
      dict = {['Name']: 'Zara', 'Age': 7};
TypeError: unhashable type: 'list'

Встроенные словарные функции и методы

Python включает следующие функции словаря —

Серийный номер Функция с описанием
1 cmp(dict1, dict2)

Сравнивает элементы обоих dict.

2 len(дикт)

Дает общую длину словаря. Это будет равно количеству элементов в словаре.

3 str(дикт)

Создает печатное строковое представление словаря

4 тип(переменная)

Возвращает тип переданной переменной. Если переданная переменная является словарем, то она вернет тип словаря.

Python включает следующие методы словаря —

Серийный номер Методы с описанием
1 dict.clear()

Удаляет все элементы словаря dict

2 dict.copy()

Возвращает неглубокую копию словаря dict

3 dict.fromkeys()

Создайте новый словарь с ключами из seq и значениями set в значение .

4 dict.get(ключ, по умолчанию=Нет)

Для ключ key, возвращает значение или значение по умолчанию, если ключ отсутствует в словаре

5 dict.has_key(ключ)

Возвращает истину если ключ в словаре dict , ложь иначе

6 dict.items()

Возвращает список dict пары кортежей 's (ключ, значение)

7 dict.keys()

Возвращает список ключей словаря

8 dict.setdefault(ключ, по умолчанию=Нет)

Аналогично get(), но установит dict[key]=default, если key еще не в dict

9 dict.update(dict2)

Добавляет словарь dict2 пары "ключ-значение" для dict

10 dict.values()

Возвращает список словаря dict значения


Python

  1. Типы данных Python
  2. Операторы Python
  3. Оператор передачи Python
  4. Аргументы функции Python
  5. Словарь Питона
  6. Итераторы Python
  7. Замыкания Python
  8. Дата и время Python
  9. Python — Обзор
  10. Питон — Числа