En utilisant PyCharm, j'ai remarqué qu'il propose de convertir un dict littéral :
d = {
'one': '1',
'two': '2',
}
dans un constructeur de dict :
d = dict(one='1', two='2')
Ces différentes approches diffèrent-elles de manière significative?
(En écrivant cette question, j'ai remarqué qu'il dict()
est impossible de spécifier une clé numérique à l' aide ... d = {1: 'one', 2: 'two'}
est possible, mais, évidemment, dict(1='one' ...)
ne l'est pas. Autre chose?)
dict(abc = 123)
constructeur produit un dictionnaire avec des clés de chaîne d'octets 'abc'
, ce qui peut être surprenant si vous utilisez unicode_literals
et attendez que les clés de dictionnaire soient unicode u'abc'
. Voir stackoverflow.com/questions/20357210/… .
dict()
prend une liste de paires clé-valeur ainsi que d'autoriser les paramètres nommés, afin qu'il puisse utiliser utilisé pour créer tout type de dict, mais pas avec la syntaxe que vous utilisez. Cela ne vaut probablement rien non plus qu'il y avait un bogue ( youtrack.jetbrains.net/issue/PY-2512 ) dans pyCharm spécifiquement à cause de ce que vous avez découvert, qui a été corrigé).