我目前有一个莫尔斯代码字母的字典,我希望能够将用户输入字符串更改为相应的莫尔斯代码字符。有没有简单的方法在python中完成这个?
答案 0 :(得分:6)
morse = {"A": ".-", "B": "-...", "C": "-.-."} #etc.
text = "ABC"
output = " ".join(morse[letter] for letter in text)
如果输入也可以小写,则可能需要使用letter.upper()
。如果你的表中没有所有莫尔斯字符,你也可能想要对此进行补偿(为此我可以去ThiefMaster!),最终结果可能是
output = " ".join(morse[letter] for letter in text.upper() if letter in morse)
答案 1 :(得分:2)
newStr = ' '.join(morseDict[c] for c in oldStr if c in morseDict)
这将默默删除morseDict
编辑:现在在“字母”之间添加空格。您需要将' '
映射到例如一个选项卡或多个空格,以便有一个单词分隔符。
答案 2 :(得分:0)
morse = {
"a": ".-",
"b": "-...",
"c": "-.-.",
...
...
}
str = "Hello"
for ch in str:
print morse[ch.lower()],
答案 3 :(得分:0)
很简单:
input = 'a string'
morse_code = { ... }
print ' '.join( [morse_code[i] for i in input] )