python

Python – Traductor código Morse

En este post de programación en Python te mostraré cómo codificar y decodificar código Morse. Es decir, hacer un programa que lea una cadena y la transforme a Morse, o la operación contraria, leer una cadena Morse y decodificarla a texto.

Traductor código Morse a texto en Python

De modo que la final haremos un programa en Python que convierte la palabra PYTHON a .--. -.-- - .... --- -. y lo contrario.

Traductor Morse

Comencemos viendo las equivalencias de cada letra del texto a su representación Morse. Me he dado a la tarea de escribir los códigos ASCII y sus equivalencias:

See the gist on github.

Ahora lo único que hay que hacer en el programa es pasar estas equivalencias a una estructura de datos como un arreglo o diccionario que nos permita buscar el ASCII de un Morse, y el Morse de un ASCII.

Una vez que tengamos la estructura de datos vamos a hacer funciones que, dado un carácter ASCII, devuelve su codificación Morse. Y lo mismo para la operación contraria.

Finalmente para pasar de texto a Morse y viceversa vamos a hacer unas funciones que recibirán cadenas (o palabras, como quieras llamarle), se van a recorrer todas y cada unas de las letras de la misma y se van a ir codificando con las funciones anteriormente descritas.

Verás que será relativamente sencillo; así que manos a la obra.

Equivalencias

He colocado las equivalencias en un diccionario de Python. Si quieres un programa mucho más rápido (ni siquiera se nota la velocidad, créeme) puedes hacer dos diccionarios: uno en donde las claves sean los ASCII, y otros en donde las claves sean los Morse.

See the gist on github.

Codificando a Morse

Como mencioné anteriormente, necesitamos una función para convertir una letra a Morse y después invocar a esa función por cada letra de la cadena a codificar.

El código Python en donde se hace la conversión de texto a Morse queda así:

See the gist on github.

Los comentarios explican el funcionamiento del programa. Estamos dividiendo las tareas para que el código sea más fácil de entender. Ahora es momento de ver cómo transformar de Morse a texto plano.

De texto a Morse con Python

Las funciones serán muy parecidas, solo cambiará la parte en donde buscamos la equivalencia pues ahora no buscaremos por clave del diccionario, sino por valor.

See the gist on github.

Codificando y decodificando

Ya tenemos las funciones, ahora es momento de usarlas. Como ejemplo tenemos lo siguiente:

See the gist on github.

La función que transforma a Morse recibe la palabra original y la devuelve codificada. La función que decodifica el Morse recibe la cadena modificada y la devuelve en texto plano.

Obviamente tú puedes adaptar todo esto a tus necesidades.

Poniendo todo junto

He separado las equivalencias y las funciones del programa así que en total son dos archivos que componen el código fuente, mismo que te dejaré en mi GitHub.

Recuerda que en mi blog tengo más contenido de Python y que he hecho el mismo traductor en C y Java.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Entradas recientes

JavaScript (lado del cliente): leer pixeles de imagen

En ocasiones es necesario leer los pixeles y colores de una imagen con JavaScript del…

5 días hace

PHP y JavaScript: llenar select con AJAX

Siguiendo con los tutoriales de listas desplegables o select con JavaScript, vamos a ver cómo…

5 días hace

Imprimir PDF generado con HTML

Hoy vamos a ver programar la impresión de un PDF generado a partir de HTML…

6 días hace

JavaScript: llenar select con arreglo

En este tutorial básico de JavaScript con HTML vamos a ver cómo llenar una lista…

2 semanas hace

Imprimir PDF a partir de URL

En este artículo se presenta una guía para imprimir un PDF a partir de una…

2 semanas hace

Imprimir PDF a partir de base64

En este post voy a enseñarte cómo imprimir un PDF a partir de su representación…

2 semanas hace

Esta web usa cookies.