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

Как обновить ключ в словаре в Python, если ключ не существует?

Резюме: Чтобы обновить ключ в словаре, если оно не существует, вы можете проверить, присутствует ли он в словаре, используя в ключевое слово в этом словаре вместе с оператором IF, а затем обновить пару ключ, используя обязательную запись или обновление () метод или * оператор. Другой обходной путь для этого, используя SetDefault (ключ [, дефолт]) … Как обновить ключ в словаре в Python, если ключ не существует? Подробнее “

Автор оригинала: Shubham Sayon.

Резюме: Чтобы обновить ключ в словаре, если оно не существует, вы можете проверить, присутствует ли он в словаре, используя в Ключевое слово наряду с утверждением, а затем обновите пару ключ-значение, используя обязательную запись или Обновление () Метод или * оператор. Еще один обходной путь для этого, используя S etdefault ( ключ [, по умолчанию ])) Метод, который обновляет словарь с парой ключа, только если он не существует в словаре в противном случае, он возвращает ранее существующие элементы.

Проблема: Учитывая словарь; Как обновить ключ в этом, если ключ не существует?

Пример:

device = {
  "brand": "Apple",
  "model": "iPhone 11",
}

< Some Method to Check if key-value pairs "color" : "red" and "year" : 2019  exists or not and then update/insert it in the dictionary >  

print(device)

Выход:

{'brand': 'Apple', 'model': 'iPhone 11', 'color': 'red', 'year': 2019}

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

  1. В первом разделе давайте обсудим методы обновления или вставки ключа,
  2. Во втором разделе мы будем обсуждать методы проверки, если ключ присутствует в словаре,
  3. Наконец, мы объединим наши концепции, чтобы достичь окончательного решения.

Без дальнейшей задержки давайте погрузимся в решения сразу.

Раздел 1: Вставить/обновить ключ в словаре

Способ 1: Создать новую пару ключ-значение. Назначить его словаре | Обозначения подписки

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

device = {
  "brand": "Apple",
  "model": "iPhone 11",
}

device["year"] = 2019
print(device)

Выход:

{«Бренд»: «Apple», «год»: 2019, «Модель»: «iPhone 11 ‘}

Способ 2: Используйте функцию Update ()

Обновление () Метод используется для вставки или обновления определенной пары клавиш в словаре. Пункт, который будет вставлен, также может быть еще одним повтором. Кроме того, если указанный ключ уже присутствует в словаре, то предыдущее значение будет перезаписано.

Следующий код демонстрирует использование Обновление () Метод:

device = {
  "brand": "Apple",
  "model": "iPhone 11",
}

device.update({"year" : 2019})
print(device)

Выход:

{'brand': 'Apple', 'model': 'iPhone 11', 'year': 2019}

Способ 3: Использование * оператора

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

device = {
  "brand": "Apple",
  "model": "iPhone 11",
}
device = {**device,**{"year":2019}}
print(device)

Выход:

{'brand': 'Apple', 'model': 'iPhone 11', 'year': 2019}

Отказ от ответственности: В приведенных выше способах, если мы не проверяем наличие ключа в словаре, то значение будет перезаписано в словаре, если ключ и значение уже существуют в словаре. Теперь, что приводит нас к второму разделу нашего обсуждения!

Раздел 2: Проверьте, присутствует ли ключ в словаре

Способ 1: Использование в ключевое слово

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

device = {
  "brand": "Apple",
  "model": "iPhone 11",
  "year":2018
}

if "year" in device:
  print("key year is present!")
else:
  print("key year is not Present!")

if "color" in device:
  print("key color is present!")
else:
  print("key color is not present!") 

Выход:

key year is present!
key color is not present!

Примечание: Так же, как в Ключевое слово, мы можем использовать не в Ключевое слово для проверки, если ключ отсутствует в словаре.

Метод 2: Использование функции клавиш ()

Клавиши () Является встроенным методом, который извлекает ключи, присутствующие в словаре и хранят их в списке. Таким образом, с помощью этого встроенного метода мы можем определить, присутствует ли ключ в словаре.

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

device = {
  "brand": "Apple",
  "model": "iPhone 11",
  "year":2018
}

if "year" in device.keys():
  print("key year is present!")
else:
  print("key year is not Present!")

if "color" in device.keys():
  print("key color is present!")
else:
  print("key color is not present!") 

Выход:

key year is present!
key color is not present!

Метод 3: Использование функции HAS_KEY ()

Если вы используете Python 2.x, то, вы можете воспользоваться своими шансами с методом HAS_KEY (), который является встроенным методом в Python, который возвращает true, если указанный ключ присутствует в словаре, он возвращает false.

Осторожно: HAS_KEY. () был удален из Python 3, а также отстает от в Ключевое слово при проверке наличия ключей в словаре с точки зрения производительности. Таким образом, вы должны использовать избегать использования его, если вы используете Python 3 или выше Отказ

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

device = {
  "brand": "Apple",
  "model": "iPhone 11",
  "year":2018
}

if device.has_key("year"):
  print("key year is present!")
else:
  print("key year is not Present!")

if device.has_key("color"):
  print("key color is present!")
else:
  print("key color is not present!") 

Выход:

key year is present!
key color is not present!

Феве !!! Теперь мы, наконец, оснащены всеми процедурами, чтобы проверить, а также обновить ключ в словаре, если он не существует в словаре. Это приводит нас к заключительным этапам нашей дискуссии, где мы объединим наши знания из раздела 1 и раздела 2 для достижения желаемого выхода.

Обновите ключ В словаре Если это не существует

Решение 1: Использование концепций, обсуждаемых в разделе 1 и раздел 2

Поскольку мы проходим с концепциями, давайте погрузимся в программу для их реализации и получить окончательный результат:

device = {
  "brand": "Apple",
  "model": "iPhone 11",
}

# Method 1 : Create a New Key_Value pair and check using the in keyword
if "color" not in device:
  device["color"] = "red"

# Method 2 : Use update() method and check using the not in keyword
if "year" not in device.keys():
  device.update({"year" : 2019})

#  Method 2 : Use * operator and check using the not in keyword
if "brand" not in device.keys():
  device.update({"brand" : "Samsung" })
else:
  print(device)

Выход:

{'brand': 'Apple', 'model': 'iPhone 11', 'color': 'red', 'year': 2019}

Решение 2: Использование метода SetDefault ()

установить по умолчанию () Является встроенным методом Python, который возвращает значение ключа, если он уже существует в словаре, и если оно не существует, то пара значения ключа вставляется в словарь.

Давайте посмотрим на следующую программу, которая объясняет setdefault () Способ в Python:

device = {
  "brand": "Apple",
  "model": "iPhone 11",
  "color": "red"
}

device.setdefault('year',2019)
print(device)

Выход:

{'brand': 'Apple', 'model': 'iPhone 11', 'color': 'red', 'year': 2019}

Заключение

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

Пожалуйста, подпишитесь и оставайтесь настроенными для более интересных статей!

Куда пойти отсюда?

Достаточно теории, давайте познакомимся!

Чтобы стать успешным в кодировке, вам нужно выйти туда и решать реальные проблемы для реальных людей. Вот как вы можете легко стать шестифункциональным тренером. И вот как вы польские навыки, которые вам действительно нужны на практике. В конце концов, что такое использование теории обучения, что никто никогда не нуждается?

Практические проекты – это то, как вы обостряете вашу пилу в кодировке!

Вы хотите стать мастером кода, сосредоточившись на практических кодовых проектах, которые фактически зарабатывают вам деньги и решают проблемы для людей?

Затем станьте питоном независимым разработчиком! Это лучший способ приближения к задаче улучшения ваших навыков Python – даже если вы являетесь полным новичком.

Присоединяйтесь к моему бесплатным вебинаре «Как создать свой навык высокого дохода Python» и посмотреть, как я вырос на моем кодированном бизнесе в Интернете и как вы можете, слишком от комфорта вашего собственного дома.

Присоединяйтесь к свободному вебинару сейчас!

Я профессиональный Python Blogger и Content Creator. Я опубликовал многочисленные статьи и создал курсы в течение определенного периода времени. В настоящее время я работаю полный рабочий день, и у меня есть опыт в областях, таких как Python, AWS, DevOps и Networking.

Вы можете связаться со мной @:

Оригинал: “https://blog.finxter.com/how-to-update-a-key-in-a-dictionary-in-python-if-the-key-doesnt-exist/”