Python, похоже, имеет несогласованность в том, какие ключи он примет для dicts. Или, по-другому, он позволяет определенным типам ключей одним способом определения dicts, но не в других:
>>> d = {1:"one",2:2}
>>> d[1]
'one'
>>> e = dict(1="one",2=2)
File "<stdin>", line 1
SyntaxError: keyword can't be an expression
Является ли обозначение {...}
более фундаментальным, а dict(...)
просто синтаксическим сахаром? Это потому, что для Python просто нет возможности parse dict(1="one")
?
Мне любопытно...