Código :
# Cifrado Morse.py - Sanko
# -*- coding: utf-8 -*-
class cif_morse():
def __init__(self):
self.table = {'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':'--..',
'Ä':'.-.-', 'Ö':'---.', 'Ü':'..--', '0':'-----',
'1':'.----', '2':'..---', '3':'...--', '4':'....-',
'5':'.....', '6':'-....', '7':'--...', '8':'---..',
'9':'----.', '.':'.-.-.-', ',':'--..--', '?':'..--..',
'!':'..--.', ':':'---...', '"':'.-..-.', "'":".----.",
'=':'-...-', ' ':' '}
self.table2 = {}
# Inicializar desde aqui
self.__encode('Sanko os saluda')
self.__decode('... .- -. -.- --- --- ... ... .- .-.. ..- -.. .-')
def __encode(self, text):
self.text = text
self.encoded = ''
if self.text != '':
self.text = self.text.upper()
for i in self.text:
self.encoded += self.table[i] + ' '
print "Encoded: %s"% self.encoded
def __decode(self, en_text):
self.en_text = en_text
self.decoded = ''
for i in self.table:
self.table2[self.table[i]] = i
self.en_text = self.en_text.split(' ')
for x in self.en_text:
try:
self.en_text.remove('')
except:
pass
self.decoded += self.table2[x]
print "Decoded: %s"% self.decoded
cif_morse()
Imágen :

Saludos