python转换字符串为摩尔斯电码

2022-03-11 00:00:00 字符串 转换 电码

python转换字符串为摩尔斯电码,是的你没有看错,就是电影《无间道》里用到的摩斯电码

"""
作者:皮蛋编程(https://www.pidancode.com)
创建日期:2022/3/21
功能描述:python转换字符串为摩尔斯电码
"""
chars = ",.0123456789?abcdefghijklmnopqrstuvwxyz"
codes = """--..-- .-.-.- ----- .---- ..--- ...-- ....- ..... -.... --... ---..
           ----. ..--.. .- -... -.-. -... . ..-. --. .... .. .--- -.- .-.. --
           -. --- .--. --.- .-. ... - ..- ...- .-- -..- -.-- --.."""
keys = dict(zip(chars, codes.split()))


def char2morse(char):
    return keys.get(char.lower(), char)


print(' '.join(char2morse(c) for c in 'SOS'))
print(' '.join(char2morse(c) for c in 'pidancode.com'))

输出结果:
... --- ...
.--. .. -... .- -. -.-. --- -... . .-.-.- -.-. --- --

以上代码在Python3.9环境下测试通过

相关文章