2015-04-10 2 views
-1
code = { 

     "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" : "--.. ", 

     } 




    def morse(word): 
    for i in word: 
     if i == " ": 
      print(" " * 2, end="") 
     else: 
      print(code[i], end="") 

word = input("Type A Sentence: ") 
word = list(word.upper()) 
print(morse(word)) 

Как удалить «none» после этого? потому что при запуске это не выводится в конце.простой morse код. как улучшить?

все, кажется, работает хорошо для этого ни в конце

Тип Слово за исключением: привет ..... .- .. .- .. --- Нет

+0

Вы делаете «печать» в двух местах, где вы называете «morse» и другое внутри самой функции. Вы должны печатать только один раз. У вас есть выбор: 'morse' возвращает строку и печатает эту строку (и удаляет там вызовы печати) или удаляет' print' из того места, где вы называете 'morse'. Более гибким выбором было бы, чтобы 'morse' вернул строку. –

ответ

2

morse функция не возвращает ничего, поэтому print(morse(word)) принты None. Вы можете исправить это, не напечатав возвращаемое значение:

+0

wow, что было быстро, и решение было действительно простым. спасибо! Я очень новичок в python, и это мой первый проект. Это не звездный или ничего, кроме эй. это что-то! Большое спасибо –

Смежные вопросы