Autor: Luis Fernando Apáez Álvarez
def decifradoCesar(palabra,longitud):
alfabeto = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','ñ',
'o','p','q','r','s','t','u','v','w','x','y','z']
# declaramos una lista vacía para almacenar el alfabeto original modificado
alfabeto2 = []
# agregamos las últimas letras (de acuerdo al valor de longitud) de alfabeto
# en las primeras posiciones de alfabeto2
y = 27
while y - longitud <= 26:
alfabeto2.append(alfabeto[y - longitud])
y += 1
# cambiamos la posición de los elementos
for i in range(-1, 26 - longitud):
alfabeto2.append(alfabeto[i + 1])
# declaramos una lista auxiliar
lista_auxiliar = []
# recorremos cada letra de la palabra y almacenamos su respectivo índice
# en la lista alfabeto2 en la variable x
for letra in palabra:
# tenemos cuidado con los espacios en blanco
if letra != " ":
x = alfabeto2.index(letra)
# agregamos la letra en alfabeto2 correspondiente a cada letra de la
# palabra desplazada en la longitud correspondiente
if letra != " ":
lista_auxiliar.append(alfabeto2[x - longitud])
else:
lista_auxiliar.append(" ")
# vemos el resultado
print("".join(lista_auxiliar))
# Probemos la función con el mensaje: ipmb fsft nj bnjhp
decifradoCesar("ipmb fsft nj bnjhp", 1)
hola eres mi amigo