Как назначить int в качестве ключа, используя функцию dict ()? - PullRequest
0 голосов
/ 01 мая 2020

Я начал изучать python три дня go, и я хочу назначить число или целое число в качестве моего ключа в словаре, но я получаю ошибку

     a= dict(1=one,2=two)

, но это дает me #syntax error: выражение не может содержать присваивание (указывая на int 1)

, но когда я делаю

    b=dict(one=1,two=2)

Это прекрасно работает

Я знаю альтернативу использования

    a={1:'one',2:'two'}

но это слишком много времени, и я хочу знать, что является ошибкой в ​​первом

Ответы [ 3 ]

2 голосов
/ 01 мая 2020

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

Вместо этого можно попробовать:

dict([(1,"one"),(2,"two")])
0 голосов
/ 01 мая 2020

a = dict (1 = один, 2 = два)

Такого типа конструктор словаря принимает только ключи, которые являются действительными Python идентификаторами. Одно из правил: идентификатор не может начинаться с ди git.

Но вы можете использовать другие версии конструктора, например:

a = dict([(1, one), (2, two)])
0 голосов
/ 01 мая 2020

Это логика c: назначения работают только одним способом. 1 = myvar не будет работать, но myvar = 1 будет. Здесь вы говорите 1 = один ... Это не работает! Но когда вы изменяете это, один = 1, это работает. Так вы сами нашли ответ;)

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