Python 简单的莫尔斯电码。如何改进?

Python 简单的莫尔斯电码。如何改进?,python,Python,运行此操作后,如何删除“无”?因为运行此命令最终不会打印出任何内容 一切似乎都很顺利,除了最后一点都没有 键入一个单词:你好 .... . .-.. .-.. --- 无莫尔斯函数不会返回任何内容,因此打印(莫尔斯(word))打印无。您可以通过不打印返回值来解决此问题: code = { "A" : ".- ", "B" : "-... ", "C" : "-.-. ", "D" : "-.. ", "E

运行此操作后,如何删除“无”?因为运行此命令最终不会打印出任何内容

一切似乎都很顺利,除了最后一点都没有

键入一个单词:你好
.... . .-.. .-.. --- 无

莫尔斯函数不会返回任何内容,因此
打印(莫尔斯(word))
打印
。您可以通过不打印返回值来解决此问题:

    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))

您在两个位置执行
打印
,一个在调用
莫尔斯
的位置,另一个在函数本身内部。你应该只打印一次。您可以选择,让
morse
返回一个字符串并打印该字符串(并删除那里的打印调用),或者从调用
morse
的位置删除
print
。更灵活的选择是让
morse
返回字符串。哇,这很快,解决方案也很简单。非常感谢。我对python非常陌生,这是我的第一个项目。它不是恒星或任何东西,但嘿。真了不起!非常感谢你
morse(word)