Перевод азбуки морзе в русские буквы
Имеется код для перевода кода морзе в буквы, однако он не хочет переводить больше двух букв. Как можно переделать код, что бы все буквы, разделенные пробелами, переводились в текст?
message = input("Please type a message to encrypt: ")
new_message = ""
letters = {".-": "A",
"-...": "B",
"-.-.": "C",}
if letters[message]:
new_message = letters[message]
else:
new_message = "This cannot be turned to morse code"
print(new_message)
Ответы (2 шт):
Автор решения: CrazyElf
→ Ссылка
Примерно так:
message = input("Please type a message to encrypt: ")
new_message = ""
letters = {".-": "A",
"-...": "B",
"-.-.": "C",}
for char in message.split():
if char in letters:
new_message += letters[char]
else:
new_message = "This cannot be turned to morse code"
break
print(new_message)
Только надписи на английском при этом у вас говорят, что вы наоборот переводите текст в код морзе.
Автор решения: Cenzor
→ Ссылка
message = input("Please type a message to encrypt: ")
letters = {"A": ".-",
"B": "-...",
"C": "-.-.",
...
}
new_message = ""
for ch in message:
try:
new_message += letters.get(ch)
except:
print('This symbol cannot be turned to morse code')
exit(0)
print(new_message)