Get в python что это
Перейти к содержимому

Get в python что это

  • автор:

dict.get

default — Значение, которое следует вернуть, если в словаре не окажется указанного ключа. По умолчанию — None.

Метод возвращает значение из словаря по указанному ключу.

 my_dict = 'one': 1, 
>

my_dict.get('one') # 1
my_dict.get('two') # None
my_dict.get('two', 2) # 2

В случае, если ключ не найден в словаре возвращает значение аргумента default .
Таким образом, исключение KeyError при использование данного метода не возбуждается никогда.

На заметку

Для получения значения и инициализации элемента словаря в случае необходимости смотрите dict.setdefault.

Что такое функция get в Python?

Метод get() используется в словарях, чтобы получить значение по ключу, который передается методу в качестве аргумента:

car =  'brand': 'Ford', 'model': 'Mustang', 'year': 1964 > x = car.get('model') print(x) # => Mustang 

Если передать методу вторым аргументом какое-либо значение, то метод вернет это самое значение, если запрашиваемого ключа в словаре не обнаружится:

car =  'brand': 'Ford', 'model': 'Mustang', 'year': 1964 > x = car.get('price', 15000) print(x) # => 15000 

Метод dict.get() в Python, значение по умолчанию если ключа нет

Значение по умолчанию для отсутствующих ключей в словаре

Синтаксис:
dict.get(key[, default]) 
Параметры:
  • key — ключ словаря
  • default — значение по умолчанию
Возвращаемое значение:
  • значение ключа key или default если ключа нет.
Описание:

Метод dict.get() возвращает значение для ключа key , если ключ находится в словаре, если ключ отсутствует то вернет значение default .

Если значение default не задано и ключ key не найден, то метод вернет значение None .

Метод dict.get() никогда не вызывает исключение KeyError , как это происходит в операции [получения значения словаря по ключу dict[key] .

Примеры, как работает метод dict.get() :

>>> x = 'one': 1, 'two': 2, 'three': 3, 'four': 4> >>> x.get('two', 0) # 2 >>> x.get('four', 0) # 4 >>> x.get('ten', 0) # 0 >>> >>> print(x.get('six')) # None 

Где можно применить метод dict.get() .

Метод dict.get() можно применить, например, для подсчета количества одинаковых элементов последовательности. Допустим есть список чисел или слов (символов) или то и другое и необходимо узнать, сколько раз КАЖДЫЙ элемент встречается в этом списке. Для решения этой задачи создадим пустой словарь, в который будем добавлять в качестве ключа — элемент списка (словари, в качестве ключа могут принимать неизменяемые значения), а в качестве значения будет количество появлений этого элемента в списке.

# имеем список lst = [9, 13, 1, 3, 7, 3, 1, 1, 7, 1, 7, 9] # создаем пустой словарь rez = <> # в процессе итерации по списку for el in lst: # проверяем есть ли в словаре # ключ с элементом `el` if rez.get(el, None): # если есть, то увеличиваем # счетчик с этим ключом не 1 rez[el] += 1 else: # если нет, то создаем такой # ключ со значением, равным 1 rez[el] = 1 # смотрим что получилось print(rez) # # чтобы было нагляднее, можно отсортировать словарь # по значению (количеству появлений элементов в списке) rez_sorted = sorted(rez.items(), key=lambda x: x[1], reverse=True) print(dict(rez_sorted)) #
  • ОБЗОРНАЯ СТРАНИЦА РАЗДЕЛА
  • Представления словарей dict.keys, dict.values и dict.items
  • Исходный словарь для представления dictview.mapping
  • Получение списка ключей словаря list(dict)
  • Количество элементов в словаре len(dict)
  • Доступ к значению словаря по ключу dict[key]
  • Добавление/изменение значения словаря по ключу key
  • Удаление значения словаря по ключу
  • Проверка наличия/отсутствия ключа key в словаре dict
  • Проверка наличия/отсутствия значения value в словаре Python
  • Проверка наличия/отсутствия пары (key, value) в словаре dict
  • Итерирование по ключам и значениям словаря Python
  • Метод dict.clear(). Очистить словарь
  • Метод dict.copy(), копия словаря
  • Метод dict.fromkeys(), словарь с ключами по умолчанию
  • Метод dict.get(), значение по умолчанию если ключа нет
  • Метод dict.items(), список кортежей
  • Метод dict.keys(), список ключей словаря
  • Метод dict.values(), список значений словаря
  • Метод dict.pop()
  • Метод dict.popitem(), получить пару ключ/значение
  • Метод dict.setdefault(), получает/вставляет значение ключа
  • Метод dict.update(), обновление/дополнение словаря
  • Объединение двух словарей в новый словарь Python
  • Сортировка словаря по значению и/или ключу
  • Обратный порядок/реверс словаря reversed(dict)
  • Генератор словаря и его использование
  • Фильтр словаря по ключам и/или значениям
  • Словарь как фабрика функций

Метод get() у словарей и его «дефолтный» результат.

Немножко теории: метод get() возвращает значение для искомого ключа. Если ключ недоступен, возвращает значение по умолчанию.

name_for_userid = < 382: "Сергей", 590: "Толик", 951: "Аристарх", >def greeting(user_id): return "Привет %s!" % name_for_userid.get(user_id, "Уважаемый") greeting(382) "Привет Сергей!" greeting(333333) "Привет Уважаемый!"

О чем говорит этот пример?

Метод get() возвращает значение по ключу если такой ключ присутсвует в списке, если его нет, то метод возвращает дефолтное значение.

Если же мы напишем name_for_userid.get(5454) без указания «дефолтного» значения, то функция вернет None. Довольно удобно и практично.

А что же вернет такой код greeting(abracadabra) или greeting(‘abracadabra’)? Пишите в комментариях. По возможности подумайте перед использованием интерпретатора.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *