摩斯电码的解码

Monday, January 9, 2023
本文共418字
1分钟阅读时长

⚠️本文是作者P3troL1er原创,首发于https://peterliuzhi.top/tricks/%E6%91%A9%E6%96%AF%E7%94%B5%E7%A0%81%E7%9A%84%E8%A7%A3%E7%A0%81/。商业转载请联系作者获得授权,非商业转载请注明出处!

Strong beliefs win strong men, and then make them stronger. — Richard Bach

从音频到英文单词

Morse Code Adaptive Audio Decoder | Morse Code World这个网站可以解析莫斯电码音频

或者使用DataBorder Morse Code Sound & Vibration Listener,可以设置阈限值,可以识别出下划线(但是表示为#)

解析摩斯电码音频需要用到AI(非AI需要手工调试阈限值),网站能搞就用网站搞吧,方便点

从英文单词到摩斯电码

morse_code_dict = {
    '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': '----.', ' ': '/'
}

def encode_morse(latin_string):
    ## 将拉丁文字符串转换为摩尔斯电码
    morse_code = ''
    for char in latin_string:
        morse_code += morse_code_dict[char.lower()] + '/'
    return morse_code.strip()


latin_string = '0 2 2 3 E P R I I B L Y H O N W A J M G H F G K C Q A O Q T M F R'.replace(" ", "")
print(encode_morse(latin_string))

也可以使用网站或者Best Morse Code Translator Online with Audio Play

或者使用GitHub - HestStudio/MorseCoder: 一个关于摩斯密码解密与加密的库 / A library about encoding and decoding Morse code.

相关阅读: