Kaip gauti simbolio ASCII reikšmę

Kaip gauti ASCII simbolio vertę kaip int Python?

Sprendimas

čia:

funkcija ord() gautų int reikšmę iš char. O tuo atveju, jei norite konvertuoti atgal po žaidimo su skaičiumi, tai atliks funkcija chr().

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

Python 2 programoje taip pat yra funkcija unichr, grąžinanti Unicode simbolį, kurio eilės numeris yra argumentas unichr:

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

Python 3 programoje vietoj unichr galima naudoti chr.


ord() - Python 3.6.5rc1 dokumentacija

ord() - Python 2.7.14 dokumentacija

Komentarai (6)

Atkreipkite dėmesį, kad ord() nepateikia pačios ASCII reikšmės; ji pateikia skaitinę simbolio reikšmę bet kurioje koduotėje. Todėl ord('ä') rezultatas gali būti 228, jei naudojate Latin-1, arba jis gali sukelti TypeError, jei naudojate UTF-8. Vietoj to jis gali grąžinti net Unicode kodo tašką, jei jam perduodate unicode:

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

Jūs ieškote:

ord()
Komentarai (0)