-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': '----.'}

print (morse['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 に答える