我有一个文件dest.txt,这个格式有大约20个莫尔斯代码:
['. . ... .']
['. . ... -']
['. . -.. .']
['. . -.. -']
['. - ... .']
['. - ... -']
当我将morsecode分配给变量ex a1 = [' - .. - - 时,我的morse解码功能正常工作并解码morsecode。 -.-。 - ']并将a1作为参数发送到morseDecode函数,并将值恢复为DMNCT。但是,在下面的代码中,我试图遍历文本文件并将每行发送到morsedecode函数但输出不是预期。
from itertools import product
def morseDecode(inputStringList):
message = inputStringList
#print message
message = ' '.join(inputStringList)
message = message + ' ' # adds space at the end of the string message
#print message
temp1 = message.replace(".-.-.-", ". ")
temp2 = temp1.replace(".----.", "' ")
temp3 = temp2.replace("/", "")
temp1 = temp3.replace(".... ", "h")
temp2 = temp1.replace("...- ", "v")
temp1 = temp2.replace("..-. ", "f")
temp2 = temp1.replace(".-.. ", "l")
temp1 = temp2.replace(".--. ", "p")
temp2 = temp1.replace(".--- ", "j")
temp1 = temp2.replace("-... ", "b")
temp2 = temp1.replace("-..- ", "x")
temp1 = temp2.replace("-.-. ", "c")
temp2 = temp1.replace("-.-- ", "y")
temp1 = temp2.replace("--.. ", "z")
temp2 = temp1.replace("--.- ", "q")
temp1 = temp2.replace("... ", "s")
temp2 = temp1.replace("..- ", "u")
temp1 = temp2.replace(".-. ", "r")
temp2 = temp1.replace(".-- ", "w")
temp1 = temp2.replace("-.. ", "d")
temp2 = temp1.replace("-.- ", "k")
temp1 = temp2.replace("--. ", "g")
temp2 = temp1.replace("--- ", "o")
temp1 = temp2.replace(".. ", "i")
temp2 = temp1.replace(".- ", "a")
temp1 = temp2.replace("-. ", "n")
temp2 = temp1.replace("-- ", "m")
temp1 = temp2.replace(". ", "e")
temp2 = temp1.replace("- ", "t")
result = temp2.upper()
return result
def fun():
with open('dest.txt') as f:
for line in f:
a = line
print morseDecode(a)
a1=['-.. -- -. -.-. -']
print morseDecode(a1)
fun()
I get the output as :
[ ' TEE TT TE EETE E' ]
[ ' TEE TT TE EETE T' ]
[ ' TEE TT TE TETE E' ]
[ ' TEE TT TE TETE T' ]
这里出了什么问题。请帮忙。