En este post vamos a resolver un ejercicio muy simple en Python. Se trata de duplicar cada carácter que exista en una cadena, o dicho de otra forma, duplicar las letras que hay en una frase.
Explicación del algoritmo
Lo que haremos será crear una nueva cadena que tendrá la cadena original pero con cada letra duplicada.
Recorremos la cadena original letra por letra, y concatenamos la letra dos veces dentro de la cadena nueva.
Recuerda que en este caso estamos duplicando, así que solo adjuntamos la letra 2 veces pero podríamos multiplicarla (sí, en Python puedes modificar cadenas) si quisieras que aparezcan 3, 4, 5 o más veces.
Duplicar letras de cadena en Python
Vayamos al código que es muy simple. Todo está encerrado en una función que recibe una cadena y te la devuelve con las letras duplicadas. Queda así:
def duplicar_letras(cadena):
cadena_con_letras_duplicadas = ""
for letra in cadena:
cadena_con_letras_duplicadas += letra+letra
return cadena_con_letras_duplicadas
Aquí tenemos un ejemplo de uso ya con el código completo:
def duplicar_letras(cadena):
cadena_con_letras_duplicadas = ""
for letra in cadena:
cadena_con_letras_duplicadas += letra+letra
return cadena_con_letras_duplicadas
mensaje = "Hola mundo, programando desde parzibyte.me"
mensaje_con_letras_duplicadas = duplicar_letras(mensaje)
print(mensaje_con_letras_duplicadas)
La salida ya la has visto junto al encabezado de esta sección. Por si tienes problemas con que duplique espacios o esas cosas puedes hacer un if letra != " "
o algo más elegante.
Para terminar te dejo con más ejercicios de Python en mi blog.