-2

我正在寻找使用 Python 将英语转换为摩尔斯电码的翻译器。我能够让它工作,但想改进它。

这是我所拥有的:

morse = {'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': '--..',

    '0': '-----',  '1': '.----',  '2': '..---',
    '3': '...--',  '4': '....-',  '5': '.....',
    '6': '-....',  '7': '--...',  '8': '---..',
    '9': '----.'}

打印(莫尔斯['G'])

现在这工作正常,但我希望它提示我一个问题,例如“你想翻译什么?” 然后让某人输入(例如)“这将被转换为摩尔斯电码”。并转换任何类型的内容。有谁知道这样做的方法?为每个字母输入“print (morse['G'])”似乎很麻烦。

4

1 回答 1

0

您可以使用 raw_input (python 2) 或 input (python 3) 函数提示用户输入。这些函数的输入是显示的提示,函数返回输入的内容。

>stored_input = input('Please enter a line: ')
Please enter a line: Some input
>print stored_input
Some input

这个函数会返回一个字符串给你。我将留给您学习如何将字符串分解为字符。此外,如果输入不是大写字母或数字(例如小写数字或“\”)怎么办?一定要利用谷歌找出其余的,这个问题已经被问过很多很多次了。

于 2016-05-25T22:33:20.627 回答