93 votes

Comment convertir une liste de valeurs ascii en une chaîne en python ?

J'ai une liste dans un programme Python qui contient une série de nombres, qui sont eux-mêmes des valeurs ASCII. Comment puis-je convertir ceci en une chaîne "régulière" que je peux faire écho à l'écran ?

165voto

Thomas Wouters Points 38811

Vous recherchez probablement 'chr()' :

>>> L = [104, 101, 108, 108, 111, 44, 32, 119, 111, 114, 108, 100]
>>> ''.join(chr(i) for i in L)
'hello, world'

14voto

Toni Ruža Points 5538
import array
def f7(list):
    return array.array('B', list).tostring()

from Python Patterns - Une anecdote d'optimisation

10voto

Timo Herngreen Points 64

Vous pouvez utiliser bytes(list).decode() pour le faire - et list(string.encode()) pour récupérer les valeurs.

8voto

l = [83, 84, 65, 67, 75]

s = "".join([chr(c) for c in l])

print s

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X