Toucandigit

MorseCode

Feb 5th, 2020
199
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.64 KB | None | 0 0
  1. import math
  2.  
  3. def morse(string):
  4.     key = "?????E?I??S?H??5???????B6D????N????L????R?7???F???T?A??U?V??4???????P8K????M?????????W?????Q????3???O?Y??9???????J?????????2?????????????????1????????0"
  5.     valdict = {".":1, "-":10}
  6.     letters = string.split(" ")
  7.     result = ""
  8.     for letter in letters:
  9.         sm = 0
  10.         for i in range(len(letter)):
  11.             try:
  12.                 sm += (i + 1) * valdict[letter[i]]
  13.             except KeyError:
  14.                 pass
  15.         sm = int(math.floor(sm * 5 / len(letter)))
  16.         try:
  17.             result += key[sm]
  18.         except IndexError:
  19.             result += "?"
  20.     return result
Advertisement
Add Comment
Please, Sign In to add comment