Pythonic способ установки по умолчанию - PullRequest
0 голосов
/ 19 февраля 2011

Есть ли простой способ установить значение по умолчанию в python - в частности, установить значение по умолчанию в dict?

Например, допустим, у меня есть dict под названием foo, который может иметь или не иметьчто-то назначенное на клавишу bar.Подробный способ сделать это:

if not foo.has_key('bar'):
  foo['bar'] = 123

Один из вариантов будет:

foo['bar'] = foo.get('bar',123)

Есть ли какой-нибудь стандартный способ Python сделать это - что-то вроде следующего, но это на самом деле работает?

foo['bar'] ||= 123

Ответы [ 3 ]

5 голосов
/ 19 февраля 2011

Никто не читает документацию ?

foo.setdefault('bar', 123)
3 голосов
/ 19 февраля 2011

Вы можете проверить defaultdict

1 голос
/ 19 февраля 2011

(неправильная первая часть ответа удалена)

Dict s имеет метод setdefault(), который работает так же, как get(), только он вставляет значение, если ключ отсутствует.*

foo.setdefault('bar', 123)

Приветствия.

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