描述

摩斯密码(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 ━ ━ ━ ━ .

标点符号

. .━ .━ .━ : ━ ━ ━ ... , ━ ━ ..━ ━ ; ━ .━ .━ . ? ..━ ━ .. = ━ ...━ ' .━ ━ ━ ━ . / ━ ..━ . ! ━ .━ .━ ━ ━ ━ ....━ _ ..━ ━ .━ " .━ ..━ . ( ━ .━ ━ . ) ━ .━ ━ .━ $ ...━ ..━ & .━ ... @ .━ ━ .━ .

已知某摩斯密码的加密规则为:将输入的英文句子转换成摩尔斯电码并输出,其中字母、数字和标点符号按编码输出(和之前OJ中的加密规则一样),若编码表里没有的字符,原样输出,且每个摩斯码之间用一个空格分隔。 morse = [".-", "-...", "-.-.", "-..", ".", "..-.", "--.", "....", "..", ".---", "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-", "..-", "...-", ".--", "-..-", "-.--", "--.."] digit = ['-----', '.----', '..---', '...--', '....-', '.....', '-....', '--...', '---..', '----.'] punctuation = {'.': '.-.-.-', ':': '---...', ',': '--..--', ';': '-.-.-.', '?': '..- -..', '=': '-...-', "'": '.----.', '/': '-..-.', '!': '-.-.--', '-': '-....-', '_': '..--.-', '"': '.-..-.', '(': '-.--.', ')': '-.--.-', '$': '...-..-', '&': '·-···', '@': '.--.-.', ' ': ''}

要求编写程序将输入接收的莫斯密码解密成真实字符。

样例

输入

.... . .-.. .-.. --- --..-- .-- . .-.. -.-. --- -- .  - ---  .--. -.-- - .... --- -.

输出

hello,welcome to python

Accept代码

morse = {'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': '----.', ' ': ' / '}
punctuation = {'.': '.-.-.-', ':': '---...', ',': '--..--', ';': '-.-.-.', '?': '..- -..', '=': '-...-',"'": '.----.', '/': '-..-.', '!': '-.-.--', '-': '-....-', '_': '..--.-', '"': '.-..-.','(': '-.--.', ')': '-.--.-', '$': '...-..-', '&': '·-···', '@': '.--.-.', ' ': ''}
str1 = input().split(" ")
a = []
for ch in str1:if ch in morse.values():print(list(morse.keys())[list(morse.values()).index(ch)],end='')elif ch in punctuation.values():print(list(punctuation.keys())[list(punctuation.values()).index(ch)],end='')else:print(ch,end='')

P123 摩斯密码解密相关推荐

  1. 摩斯密码解密py脚本

    摩斯密码解密py脚本 解题思路 0010 0100 01 110 1111011 11 11111 010 000 0 001101 1010 111 100 0 001101 01111 000 0 ...

  2. python实现摩斯密码解密

    原理 原理非常简单,解密过程实际上就是一对一的过程,用字典存好摩斯密码的东西,主键为摩斯串,值为字符. 然后根据摩斯串把相应的字符打印出来而已-. 这不就是解密的过程吗? 使用方法 输入摩斯密文,注意 ...

  3. 西南科技大学 Python程序设计 摩斯密码解密

    描述 摩斯密码(morse code),又称摩斯电码.摩尔斯电码(莫尔斯电码),是一种时通时断的信号代码,通过不同的信号排列顺序来表达不同的英文字母.数字和标点符号:通信时,将英文字母等内容翻译成摩斯 ...

  4. java摩斯密码解密_[代码全屏查看]-摩斯密码转换-JAVA版

    [1].[代码] [Java]代码 import java.util.HashMap; import java.util.Map; import org.apache.commons.lang3.St ...

  5. 密码加密解密(一)——摩斯密码

    摩尔斯电码(又译为摩斯密码,Morse code)是一种时通时断的信号代码,通过不同的排列顺序来表达不同的英文字母.数字和标点符号. 摩斯编码: 1.加密方法 2.解密方法 要求:解密的时候要求能够自 ...

  6. Python-摩斯密码加密解密

    文章目录 前言 一.摩斯密码表 [1]. encode.txt [2]. decode.txt 二.代码 前言 密码表只写了英文字母和数字,在百度的时候发现不同地方写的符号转换方式不大一样. 你也可以 ...

  7. 摩斯密码Java/Python实现

    摩斯密码Java/Python实现 摩斯密码Java/Python实现 摩斯密码Java/Python实现 前言 摘自<犯罪大师>谜题关卡 一.Java实现 二.Python实现 总结 前 ...

  8. 一个五层加密过的表白恢复密码解密的过程

    今天在贴吧看到一篇2009年的帖子,并且这篇帖子至今还有人回复 内容是一个男生向一位古典学专业的女生表白后,女生叫这男生解密一段被摩斯密码加密过的密码就会跟男生约会.我这里就不多说了,因为已经有人解密 ...

  9. 7.2 摩斯密码(project)(已更新)

    本关任务:编写程序,将英文句子转换成摩尔斯电码的小程序. 相关知识 摩斯密码 摩斯密码(又译为摩尔斯电码,Morse code)是一种时通时断的信号代码,通过不同的排列顺序来表达不同的英文字母.数字和 ...

最新文章

  1. numpy.ndarray.reshape()torch.Tensor.reshape()与numpy.ndarray.view()torch.Tensor.view()的区别(view_as())
  2. 对clear float 的理解
  3. 累积分布函数_C7: 概率函数和分布函数Distribution Function
  4. IaaS, PaaS和SaaS公司都做些什么
  5. 轻量级数据交换格式JSON
  6. android菜单详解四:子菜单
  7. editview只输入英文_入门小百科丨如何在电脑/手机输入日语
  8. 从 dig(nslookup) bind —— windows 下的域名解析服务器信息的查看
  9. [转]Git使用基础篇
  10. ovirt4.4.10安装配置USB重定向
  11. SQL创建触发器以及触发器的使用实例+详解
  12. 360浏览器的极速模式和兼容模式的区别
  13. 究竟什么是冯诺依曼瓶颈(von Neumann Bottleneck)?
  14. .NET Framework各个版本(1.0 - 2.0)
  15. 135编辑器如何插入文件
  16. arcgis把jpg转成栅格图像_[转载]在ArcGIS中配准(TIF、JPEG)栅格图像并矢量化(转)...
  17. oracle忘记密码找回
  18. 贵州大学计算机研究生排名,贵大计算机研究生怎么样?
  19. 【Unity】NGUI/UGUI 小地图制作
  20. freeCAD学习笔记三:复制草图中的对象

热门文章

  1. Vue 实现简单的二维码扫描功能
  2. php案例:用GD库生成单色图案
  3. 色彩空间之RGB与HSV
  4. PLSQL Developer设置编码格式
  5. 二叉树、平衡二叉树、红黑树、BTree、B+Tree的区别和联系
  6. 18057 ASCII码值之和的差
  7. springboot集成IKAnalyer分词工具
  8. 关于训练中AttributeError: ‘NoneType’ object has no attribute ‘flatten’
  9. 生物信息学基础知识Day1
  10. 微信小程序ThinkPhp6后台管理系统