Como Converter um caractere em um Inteiro e Vice Versa em Python
-
Utilize
chr()
para converter um número inteiro em um caractere em Python -
Utilize
ord()
para converter um caractere para um Inteiro em Python
Este tutorial discute métodos para converter um caractere em um número inteiro e um número inteiro em um caractere em Python.
Utilize chr()
para converter um número inteiro em um caractere em Python
Podemos utilizar a função embutida chr()
para converter um número inteiro para sua representação de caracteres em Python. O exemplo abaixo ilustra isto.
val = 97
chr_val = chr(val)
print(chr_val)
Resultado:
a
Resultará em um erro se você fornecer um valor inteiro inválido para isto. Por exemplo:
val = 1231232323
chr_val = chr(val)
print(chr_val)
Resultado:
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-42-f76a9ed55c90> in <module>
1 val = 1231232323
----> 2 chr(val)
ValueError: chr() arg not in range(0x110000)
Por isso, é sempre bom colocar este código em um bloco de try...except
para capturar o erro, se houver, e evitar qualquer falha. O exemplo abaixo ilustra isto:
val = 1231232323
try:
chr_val = chr(val)
print(chr_val)
except Exception as e:
print("Error:", e)
Resultado:
Error: chr() arg not in range(0x110000)
Utilize ord()
para converter um caractere para um Inteiro em Python
Podemos utilizar a função integrada ord()
para converter um caractere para um inteiro em Python. O exemplo abaixo ilustra isto.
val = "a"
try:
int_val = ord(val)
print(int_val)
except Exception as e:
print("Error:", e)
Resultado:
97
O método acima também captura qualquer entrada inválida e imprime o erro em vez de quebrar o código. Por exemplo:
val = "aa"
try:
int_val = ord(val)
print(int_val)
except Exception as e:
print("Error:", e)
Resultado:
Error: ord() expected a character, but string of length 2 found