Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Sugestão] Para saber mais: tabela Unicode

Buscando alternativas e soluções diferentes, encontrei algo muito legal que é criar um loop para percorrer cada letra de uma palavra e visualizar seus códigos usando a função ord(), que retorna o código Unicode (ASCII para caracteres comuns).

Exemplo:

nome = "Junior"
for letra in nome:
    print(f"Letra: {letra} | Código Unicode: {ord(letra)}")

Saída:

Letra: J | Código Unicode: 74
Letra: u | Código Unicode: 117
Letra: n | Código Unicode: 110
Letra: i | Código Unicode: 105
Letra: o | Código Unicode: 111
Letra: r | Código Unicode: 114
nome = "Cruz"
for letra in nome:
    print(f"Letra: {letra} | Código Unicode: {ord(letra)}")
Letra: C | Código Unicode: 67
Letra: r | Código Unicode: 114
Letra: u | Código Unicode: 117
Letra: z | Código Unicode: 122

Como funciona:
for letra in palavra → percorre cada caractere da palavra.
ord(letra) → mostra o código numérico da letra.

Se quiser visualizar também a posição de cada letra:

palavra = "Junior"

for indice, letra in enumerate(palavra):
    print(f"Posição {indice}: {letra} = {ord(letra)}")

Resultado:

Posição 0: J = 74
Posição 1: u = 117
Posição 2: n = 110
Posição 3: i = 105
Posição 4: o = 111
Posição 5: r = 114
1 resposta
solução!

Olá, Estudante. Como vai?

Sua sugestão é excelente! Entender como os computadores tratam caracteres por meio de códigos numéricos é um passo fundamental para quem deseja trabalhar com Ciência de Dados e Processamento de Linguagem Natural (NLP).

A função ord() (abreviação de ordinal) é realmente muito poderosa para desvendar o que acontece por baixo dos panos das strings. Para complementar o seu raciocínio e agregar ainda mais valor ao tópico, vale a pena conhecer também a sua função "inversa", a chr(). Enquanto a ord() transforma uma letra em número, a chr() transforma um número no seu respectivo caractere de acordo com a tabela Unicode.

Veja este exemplo prático de como reconstruir uma palavra a partir dos códigos que você levantou:

codigos = [74, 117, 110, 105, 111, 114]
palavra_reconstruida = ""

for codigo in codigos:
    palavra_reconstruida += chr(codigo)

print(f"A palavra formada pelos códigos é: {palavra_reconstruida}")

Além disso, deixo aqui algumas curiosidades técnicas e boas práticas sobre o uso dessas funções:

  • Ordenação Lexicográfica: Quando você usa o método sort() em uma lista de nomes no Python, a linguagem utiliza justamente esses valores numéricos para decidir a ordem. É por isso que, na ordenação padrão, todas as letras maiúsculas aparecem antes das minúsculas (ex: "Z" vem antes de "a", pois o código 90 é menor que 97).
  • Tratamento de Dados: Em projetos reais de análise de dados, usamos ord() e chr() para identificar e limpar caracteres "sujos" ou invisíveis que podem vir de arquivos mal formatados, garantindo que a base de dados esteja padronizada.
  • Compatibilidade: O Unicode é um padrão mundial que permite ao Python lidar nativamente com acentuação, símbolos matemáticos e até alfabetos diferentes (como o grego ou o cirílico), o que torna a linguagem muito robusta para aplicações globais.

O seu uso do enumerate() no último exemplo foi uma ótima escolha de boa prática. Ele é a forma mais recomendada em Python para percorrer uma sequência quando precisamos do valor e do índice simultaneamente, evitando a criação de contadores manuais externos.

Espero que possa ter lhe ajudado!