Python学习47:摩斯密码

类型:字符串‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬


描述‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

摩斯密码(又译为摩尔斯电码,Morse code)是一种时通时断的信号代码,通过不同的排列顺序来表达不同的英文字母、数字和标点符号。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

列表ls存储了26个英文字母对应的摩斯密码ls = [".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."],要求编写程序,将输入的英文句子转换成摩尔斯电码并输出。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

注意:英文句子里的大写字母先转换为小写字母再译码,不是字母的符号保持原样不变。

def morse_code_encryption(txt):
    """接收明文字符串为参数,返回用摩斯密码加密后的字符串。"""
    # 补充你的代码
 
    dic = {'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': '--..', ' ': ' '}
 
    num = len(txt)
    Morsecode = ''
    for i in range(num):
        if txt[i] in dic:
            Morsecode += str(dic[txt[i]])
    return Morsecode
 
 
if __name__ == '__main__':
    plaintext = input().lower()  # 输入一个字符串并转为小写
    print(morse_code_encryption(plaintext))  # 调用函数,并输出返回值

 

  • 3
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用 Python 实现摩斯密码的编解码,以下是一个简单的示例代码: ```python MORSE_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': '--..', '0': '-----', '1': '.----', '2': '..---', '3': '...--', '4': '....-', '5': '.....', '6': '-....', '7': '--...', '8': '---..', '9': '----.', '.': '.-.-.-', ',': '--..--', '?': '..--..', '!': '-.-.--', '/': '-..-.', '-': '-....-', '(': '-.--.', ')': '-.--.-' } def encode(message): encoded_message = '' for char in message: if char.upper() in MORSE_CODE: encoded_message += MORSE_CODE[char.upper()] + ' ' else: encoded_message += char return encoded_message def decode(message): decoded_message = '' words = message.split(' ') for word in words: chars = word.split(' ') for char in chars: for letter, code in MORSE_CODE.items(): if code == char: decoded_message += letter break else: decoded_message += char decoded_message += ' ' return decoded_message.strip() # 示例 message = 'HELLO WORLD' encoded_message = encode(message) print(encoded_message) # '.... . .-.. .-.. --- / .-- --- .-. .-.. -.. ' decoded_message = decode(encoded_message) print(decoded_message) # 'HELLO WORLD' ``` 在上面的代码中,我们定义了一个 Morse Code 字典,其中包含了字母、数字和一些常用符号的摩斯密码。我们提供了两个函数:`encode()` 和 `decode()`。`encode()` 函数将明文编码成摩斯密码,`decode()` 函数将摩斯密码解码成明文。在示例中,我们将字符串 `'HELLO WORLD'` 编码成 `'.... . .-.. .-.. --- / .-- --- .-. .-.. -.. '`,然后再将其解码回 `'HELLO WORLD'`。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值