使用字典更改python中的字符串

时间:2011-02-08 10:31:47

标签: python string dictionary

我目前有一个莫尔斯代码字母的字典,我希望能够将用户输入字符串更改为相应的莫尔斯代码字符。有没有简单的方法在python中完成这个?

4 个答案:

答案 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] )