morse/text2morse.py

23 lines
958 B
Python
Executable File

#!/usr/bin/env python3
import sys
MORSE_MAP = {'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': '--..', '1': '.----', '2': '..---', '3': '...--', '4': '....-', '5': '.....', '6': '-....', '7': '--...', '8': '---..', '9': '----.', '0': '-----'}
def encode():
if len(sys.argv) < 2:
print("Uso: python3 text2morse.py \"TEXTO A CONVERTIR\"")
return
texto = " ".join(sys.argv[1:]).upper()
resultado = []
for palabra in texto.split(" "):
codificado = [MORSE_MAP.get(letra, "") for letra in palabra]
resultado.append(" ".join(codificado))
# Unimos las palabras con 2 espacios
print(" ".join(resultado))
if __name__ == "__main__":
encode()