def decodeMorse(morse_code): morse_code = morse_code + " " returnString = '' y = 1 while : for x in range(len(morse_code)-1): if morse_code[x].isspace() == True and morse_code[x+1] != ' ': returnString += MORSE_CODE[morse_code[:x]] morse_code = morse_code[x+1:] break return returnString MORSE_CODE = {'.-...': '&', '--..--': ',', '....-': '4', '.....': '5', '...---...': 'SOS', '-...': 'B', '-..-': 'X', '.-.': 'R', '.--': 'W', '..---': '2', '.-': 'A', '..': 'I', '..-.': 'F', '.': 'E', '.-..': 'L', '...': 'S', '..-': 'U', '..--..': '?', '.----': '1', '-.-': 'K', '-..': 'D', '-....': '6', '-...-': '=', '---': 'O', '.--.': 'P', '.-.-.-': '.', '--': 'M', '-.': 'N', '....': 'H', '.----.': "'", '...-': 'V', '--...': '7', '-.-.-.': ';', '-....-': '-', '..--.-': '_', '-.--.-': ')', '-.-.--': '!', '--.': 'G', '--.-': 'Q', '--..': 'Z', '-..-.': '/', '.-.-.': '+', '-.-.': 'C', '---...': ':', '-.--': 'Y', '-': 'T', '.--.-.': '@', '...-..-': '$', '.---': 'J', '-----': '0', '----.': '9', '.-..-.': '"', '-.--.': '(', '---..': '8', '...--': '3'} code = '.... . -.-- .--- ..- -.. . ' print('code starts with', code.count(' ')) for index in range(len(code)-1): if code[index].isspace() and code[index+1].isspace(): code = code[index+1:] print('new total is : ',code.count(" ")) msg = decodeMorse(code) print(msg)