Come ottenere il valore ASCII di un carattere

Come ottengo il valore ASCII di un carattere come int in Python?

Soluzione

Da qui:

la funzione ord() otterrebbe il valore int del char. E nel caso vogliate riconvertire dopo aver giocato con il numero, la funzione chr() fa il trucco.

>>> ord('a')
97
>>> chr(97)
'a'
>>> chr(ord('a') + 3)
'd'
>>>

In Python 2, c'è anche la funzione unichr, che restituisce il carattere Unicode il cui ordinale è l'argomento unichr:

>>> unichr(97)
u'a'
>>> unichr(1234)
u'\u04d2'

In Python 3 si può usare chr invece di unichr.

hr>

ord() - documentazione Python 3.6.5rc1

ord() - documentazione Python 2.7.14

Commentari (6)

Nota che ord()non ti dà il valore ASCII di per sé; ti dà il valore numerico del carattere in qualsiasi codifica sia. Pertanto il risultato di ord('ä') può essere 228 se state usando Latin-1, o può sollevare un TypeError se state usando UTF-8. Può anche restituire il codepoint Unicode se gli passate un unicode:

>>> ord(u'あ')
12354
Commentari (2)

Stai cercando:

ord()
Commentari (0)