Dictionnaire de la Compréhension en Python 3

J'ai trouvé la suite d'un débordement de pile post sur dict interprétations dans Python2.7 et Python 3+: Créer un dictionnaire avec la compréhension de liste en Python indiquant que je peux appliquer dictionnaire des compréhensions comme ceci:

d = {key: value for (key, value) in sequence}

Je l'ai essayé en Python 3. Cependant, il soulève une exception.

d = {'a':1, 'b':2, 'c':3, 'd':4}
{key : value for (key, value) in d}
{key : value for key, value in d}

Les deux versions de soulever un ValueError dire que ValueError: need more than 1 value to unpack.

Ce qui est le plus simple /le moyen le plus direct pour faire un dictionnaire de la compréhension dans Python3?

  • Que dict compréhension s'attend à une séquence de paires clé-valeur. Vous nourrissez un dict, ce qui n'est pas une séquence de paires clé-valeur.
  • Je sais que c'est une vieille question, mais je voulais juste ajouter que pour éviter l'erreur, d devrait être (('a', 1), ('b', 2), ('c', 3'), ('d', 4))
InformationsquelleAutor Jon | 2013-12-10