Как проверить наличие ключа в словаре на Python языке

Jinku Hu 25 Июнь 2020 18 Апрель 2020
Как проверить наличие ключа в словаре на Python языке

Вопрос о том, как проверить существование данного ключа в Python dictionary, попадает в темы проверки членства в Python.

Ключевое слово in используется для проверки членства в словаре. См. пример кода ниже

dic = {"A":1, "B":2}

def dicMemberCheck(key, dicObj):
    if key in dicObj:
        print("Existing key")
    else:
        print("Not existing")
        
dicMemberCheck("A")
dicMemberCheck("C")
Existing key
Not existing
Информация

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

if key in dicObj.keys()

Это может дать такой же результат с решением, которое мы только что показали. Но этот метод dicObj.keys() примерно в четыре раза медленнее, так как для преобразования ключей словаря в список требуется дополнительное время.

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

>>> import timeit
>>> timeit.timeit('"A" in dic', setup='dic = {"A":1, "B":2}',number=1000000)
0.053480884567733256
>>> timeit.timeit('"A" in dic.keys()', setup='dic = {"A":1, "B":2}',number=1000000)
0.21542178873681905
Author: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn

Сопутствующая статья - Python Dictionary