0
respostas

Da Função chr() à Eficiência de Memória: Ajustes que Elevam o Padrão Técnico

Olá pessoal, espero que esta mensagem os encontrem bem ao tempo da leitura!

Ao realizar alguns exercícios propostos, tenho percebido que mesmo o curso sendo de fundamentos, é possível hypar a qualidade do conteúdo! Venho com a intenção genuína de contribuir para a evolução do curso. Em um dos exemplos apresentados, foi utilizada a seguinte construção:

chr(79) + chr(108) + chr(225)

Didaticamente, a proposta cumpre o papel de demonstrar o funcionamento da função chr(). Entretanto, sob a ótica de boas práticas de programação, vale uma reflexão adicional.

Em Python, strings são imutáveis. Isso significa que o operador + não "soma" caracteres no mesmo espaço de memória; ele cria novos objetos a cada concatenação. Em pequenos exemplos isso é irrelevante. Contudo, como padrão recorrente, pode induzir a:

  1. criação de objetos temporários desnecessários
  2. aumento de custo computacional em escala
  3. perda de legibilidade em trechos maiores

Como alternativa mais alinhada à boas práticas, podemos utilizar estruturas mutáveis e métodos mais eficientes, como .join() ou ainda f-strings.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

# Abordagem de alta performance para múltiplos Unicodes
codigos = [79, 108, 225]
saudacao = "".join(chr(c) for c in codigos)
print(saudacao)

# Exemplo com f-string (excelente em legibilidade)
print(f"{saudacao} {chr(65)}{chr(108)}{chr(117)}{chr(114)}{chr(97)}{chr(33)}")

Outro ponto interessante é o paralelo visual entre chr() e o uso da tecla Alt + codigoASCII no teclado.
Quando seguramos Alt + 65 no teclado numérico, enviamos ao sistema o código decimal do caractere correspondente. A função chr(65) realiza o mesmo mapeamento lógico via tabela Unicode, convertendo o índice no símbolo equivalente.

Observação.: chr() é a função inversa de ord(). Enquanto o chr(65) te dá a letra 'A', o ord('A') te devolve o número 65.

print(chr(65), ord('A'));

output: A 65

Minha intenção aqui não é substituir a didática do exemplo, e sim ampliar a perspectiva. Pequenas decisões de implementação, quando repetidas ao longo do tempo, podem consolidar padrões — positivos ou limitantes. Se desde o início incentivarmos práticas que escalam bem e preservam legibilidade, reduzimos a chance de vícios futuros e fortalecemos a base técnica dos alunos.

Fico totalmente aberto ao diálogo e à construção conjunta.