Python 将信息翻译成莫尔斯电码
我正试图把一条信息翻译成莫尔斯电码。我想知道如何在不为每个字母键入替换行(message=message.replace('a','.-')的情况下完成此操作。我们的讲师已向我们提供了要使用的摩尔斯电码列表Python 将信息翻译成莫尔斯电码,python,Python,我正试图把一条信息翻译成莫尔斯电码。我想知道如何在不为每个字母键入替换行(message=message.replace('a','.-')的情况下完成此操作。我们的讲师已向我们提供了要使用的摩尔斯电码列表 code = [["a", ".-"],["b","-..."],["c","-.-."],["d","-.."], ["e","."],["f","..-."],["g","--."],["h","...."], ["i",".."],["j",".---"],["k","-.-"],
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","--.."]]
谢谢!您可以多次调用
str.replace()
,而无需每次都使用for
循环键入它,如下所示:
for ch, morse in code:
line.replace(ch, morse)
下面是一个完整的实现,它使用讲师列表和str.replace()
函数。这非常低效。希望您的讲师在以后的课程中向您展示更好的方法
import fileinput
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","--.."]]
for line in fileinput.input():
line = line.replace(" ", " ")
for ch, morse in code:
line = line.replace(ch, morse + " ")
print (line)
您尝试过什么?请包含一个关于您遇到的特定问题的特定问题您知道字典吗?不,我们还没有讨论过这些问题。不相关,但
code
应该是一个dict imo。没有理由为此创建多维列表。使用字典..code={a':'。-',…}等等!然后你就可以把钥匙换成这个值了非常感谢!真是太棒了