web-dev-qa-db-fra.com

Encode Python en UTF-8

J'ai une liste python qui ressemble à ça:

list = [u'a', u'b', u'c']

Maintenant, je veux l'encoder en UTF-8. Par conséquent, je pensais que je devrais utiliser:

list = list[0].encode("utf-8")

Mais la liste imprimée ne donne que

a

ce qui signifie le premier élément de la liste. Plus même une liste. Qu'est-ce que je fais mal?

12
Tom
>>> items =  [u'a', u'b', u'c']
>>> [x.encode('utf-8') for x in items]
['a', 'b', 'c']
43
jamylak

list[0] Est le premier élément, pas une liste. vous réaffectez votre list var à une nouvelle valeur, l'encodage utf-8 du premier élément.

Ne nommez pas non plus vos variables list, car elles masquent la fonction list().

6
njzk2