Python: существует ли ключ в словаре (Python 3.1) - PullRequest
0 голосов
/ 28 апреля 2011
arguments=dict()
if (arg.find("--help") == 0):
  arguments["help"] = 1
if help in arguments:
  #this doesnt work

print(arguments["help"]) # This will print 1

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

Ответы [ 2 ]

8 голосов
/ 28 апреля 2011

Просто сделайте "help" in arguments.

>>> arguments = dict()
>>> arguments["help"]=1
>>> "help" in arguments
True

В вашем примере вы написали help in arguments без кавычек вокруг строки.Следовательно, предполагается, что вы спросите, является ли встроенная функция help ключом в вашем словаре.

Также обратите внимание, что вы можете написать arguments = {} как более питонический способ создания диктанта.

3 голосов
/ 28 апреля 2011

Вы забыли цитаты о помощи.Поскольку помощь встроена, python не жалуется, как обычно.

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