Compte tenu du dictionnaire suivant:Débarrassez-vous de symbole L (long datatype) dans la compréhension dict
d={98558: [283L, 211L, 44L, 0L],
98559: [283L, 212L, 44L, 1L],
98560: [283L, 213L, 44L, 2L]}
Je veux se débarrasser du symbole L
en utilisant la compréhension dict. Mes deux solutions ne fonctionnent pas:
dmap={k: map(int, v[i]) for v in d.values() for i in v}
dmap={k: int(v[i]) for v in d.values() for i in v}
Ils ont tous deux le retour: IndexError: list index out of range
, en disant que i=7L
. Qu'est-ce que je fais mal?
Le "L" est ne fait pas partie des données. Python imprime juste cela lors de l'affichage d'une valeur longue afin que vous puissiez voir que c'est une valeur longue. En interne, la valeur est juste '7'. Quand vous dites "se débarrasser du L", demandez-vous vraiment comment convertir chaque long en un int? Y a-t-il une raison pour laquelle vous ne pouvez pas utiliser les valeurs longues? –