Найти в Дзене
Дойти до IT

Python - Словарь

В Python словарь, или dict — это структура данных, которая позволяет хранить информацию в виде пар «ключ-значение». Словарь является изменяемым и неупорядоченным. Ключи в словаре должны быть уникальными и неизменными объектами, такими как строки, числа или кортежи. Значения могут быть любого типа данных. Это похоже на формат JSON. product = {
"name": "Laptop",
"brand": "Dell",
"price": 1200.00,
"in_stock": True
} library = {
"book1": {
"title": "Harry Potter and the Philosopher's Stone",
"author": "J.K. Rowling",
"year": 1997
},
"book2": {
"title": "1984",
"author": "George Orwell",
"year": 1949
},
# Другие книги...
}
# словарь в словаре Вместо индексов 0, 1, 2, 3 для обращения к объектам словаря используется их ключ. Для получения значения по ключу используется синтаксис: value = my_dict[key] Где my_dict - словарь, а key - ключ, по которому вы хотите получить значение. Если ключ key присутствует в сло
Оглавление

Словарь

В Python словарь, или dict — это структура данных, которая позволяет хранить информацию в виде пар «ключ-значение». Словарь является изменяемым и неупорядоченным.

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

product = {
"name": "Laptop",
"brand": "Dell",
"price": 1200.00,
"in_stock": True
}

library = {
"book1": {
"title": "Harry Potter and the Philosopher's Stone",
"author": "J.K. Rowling",
"year": 1997
},
"book2": {
"title": "1984",
"author": "George Orwell",
"year": 1949
},
# Другие книги...
}

# словарь в словаре

Индексация

Вместо индексов 0, 1, 2, 3 для обращения к объектам словаря используется их ключ.

Для получения значения по ключу используется синтаксис:

value = my_dict[key]

Где my_dict - словарь, а key - ключ, по которому вы хотите получить значение. Если ключ key присутствует в словаре my_dict, то будет возвращено соответствующее значение. В противном случае возникнет исключение KeyError.

Пример:

person = {"name": "John", "age": 30}
print(person["name"]) # Выведет: John
print(person["age"]) # Выведет: 30

Если необходимо проверить, существует ли ключ в словаре перед обращением к нему, можно воспользоваться методом in:

if "name" in person:
print("name есть в словаре")

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

Методы

У словарей в Python есть множество методов, но я расскажу о главных из них: get, keys, values, items, update и pop:

  1. dict.get(key, default=None): Возвращает значение для указанного ключа, если ключ присутствует в словаре, иначе возвращает значение по умолчанию (по умолчанию None).
    person = {"name": "John", "age": 30}
    print(person.get("name")) # Выведет: John
    print(person.get("city")) # Выведет: None
    print(person.get("city", "Unknown")) # Выведет: Unknown
  2. dict.keys(): Возвращает представление (объект) всех ключей в словаре.
    grades = {"Alice": 95, "Bob": 87, "Charlie": 91}
    print(grades.keys()) # Выведет: dict_keys(['Alice', 'Bob', 'Charlie'])
  3. dict.values(): Возвращает представление (объект) всех значений в словаре.
    grades = {"Alice": 95, "Bob": 87, "Charlie": 91}
    print(grades.values()) # Выведет: dict_values([95, 87, 91])
  4. dict.items(): Возвращает представление (объект) всех пар ключ-значение в словаре в виде кортежей.
    grades = {"Alice": 95, "Bob": 87, "Charlie": 91}
    print(grades.items()) # Выведет: dict_items([('Alice', 95), ('Bob', 87), ('Charlie', 91)])
  5. dict.update(other_dict): Обновляет словарь, добавляя элементы из другого словаря.
    person = {"name": "John", "age": 30}
    person.update({"city": "New York", "job": "Engineer"})
    print(person) # Выведет: {'name': 'John', 'age': 30, 'city': 'New York', 'job': 'Engineer'}
  6. dict.pop(key[, default]): Метод pop удаляет элемент из словаря по указанному ключу и возвращает его значение. Если ключ не найден, то метод может вернуть значение по умолчанию или вызвать ошибку, если значение по умолчанию не было указано.
    person = {"name": "John", "age": 30}
    name = person.pop("name")
    print(name) # Выведет: John
    print(person) # Выведет: {'age': 30}