Je suis à l'aide de Python 3.6.1, et je suis tombé sur quelque chose de très étrange. J'ai eu un simple dictionnaire d'attribution de la faute de frappe qui m'a pris beaucoup de temps pour trouver.
context = {}
context["a"]: 2
print(context)
Sortie
{}
Qu'est-ce que le code context["a"]: 2
faire? Il ne soulève pas un SyntaxError
alors qu'il devrait l'OMI. Au début, je pensais que c'était la création d'une tranche. Toutefois, en tapant repr(context["a"]: 2)
soulève SyntaxError
. J'ai aussi tapé context["a"]: 2
dans la console et la console n'a pas d'imprimer quoi que ce soit. J'ai pensé que peut-être il est retourné None
, mais je ne suis pas si sûr.
J'ai aussi pensé que cela pouvait être une seule ligne si la déclaration, mais cela ne doit pas être la bonne syntaxe soit.
En outre, context["a"]
devrait soulever KeyError
.
Je suis perplexe. Ce qui se passe?