Como Resolvi um desafio de código Python com apenas 1 linha
- #Python
Como todos nós, estudantes de programação, escutamos de nossos instrutores e de outros desenvolvedores, é que devemos buscar novas formas de resolver um mesmo problema.
Recentemente enquanto realizava o desafio de Python, me veio à mente que talvez existisse uma forma ou uma função que me ajudasse e escrever menos código e resolvesse o desafio.
Qual era do Desafio?
Desafio
Dada a letra N do alfabeto, nos diga qual a sua posição.
Entrada
Um único caracter N, uma letra maiúscula ('A'-'Z') do alfabeto (que contém 26 letras).
Saída
Um único inteiro, que representa a posição da letra no alfabeto.
Exemplo de Entrada Exemplo de Saída
C 3
J 10
Z 26
A 1
Como pretendia resolver o desafio:
Criaria um lista com as letras do alfabeto e retornaria o índice, conforme a entrada, somando 1 ao valor:
letra = input()
alfabeto = ['A','B','C','D','E' ...]
print(alfabeto.index(letra) + 1)
Como resolvi o desafio:
Utilizei a função ord() que retorna o valor Unicode do argumento passado
por exemplo: a = 97.
Como a entrada seria em letra maiúscula utilizei o método lower() para converter em minúscula, a letra passada pelo input() e subtraí o valor por 96. Assim o resultado sempre será conforme o desafio requer.
Veja:
print(ord(letra.lower()) - 96)
Espero que esse artigo ajude a outros alunos da plataforma e espero.