Como Converter um caractere em um Inteiro e Vice Versa em Python

Hassan Saeed 10 outubro 2023
  1. Utilize chr() para converter um número inteiro em um caractere em Python
  2. Utilize ord() para converter um caractere para um Inteiro em Python
Como Converter um caractere em um Inteiro e Vice Versa 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

Artigo relacionado - Python Integer