Python инициализировать пустой словарь с типом значений по умолчанию - PullRequest
0 голосов
/ 23 марта 2020

Я хочу использовать словарь со строкой как ключ и установить () как значения .

Как инициализировать пустой словарь с указанным типом c в качестве значений?

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

возможно

Ответы [ 2 ]

1 голос
/ 23 марта 2020

Использование defaultdict

from collections import defaultdict
mydict = defaultdict(set)
mydict["key"].add(5)
0 голосов
/ 23 марта 2020

Вы также можете использовать функцию setdefault() в стандартном python dict для инициализации ключей, которых нет.

setdefault ():

  • возвращает значение по умолчанию, переданное, если ключ отсутствует.
  • возвращает None, если ключ отсутствует и значение по умолчанию не передается
  • возвращает значение ключа, если ключ присутствует.
    x=dict()

    x.setdefault('a',set()).add(5)

    print(x) #{'a': {5}}

    x.setdefault('a',set()).add(6)

    print(x) #{'a': {5, 6}}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...