P123 摩斯密码解密
描述
摩斯密码(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 摩斯密码解密相关推荐
- 摩斯密码解密py脚本
摩斯密码解密py脚本 解题思路 0010 0100 01 110 1111011 11 11111 010 000 0 001101 1010 111 100 0 001101 01111 000 0 ...
- python实现摩斯密码解密
原理 原理非常简单,解密过程实际上就是一对一的过程,用字典存好摩斯密码的东西,主键为摩斯串,值为字符. 然后根据摩斯串把相应的字符打印出来而已-. 这不就是解密的过程吗? 使用方法 输入摩斯密文,注意 ...
- 西南科技大学 Python程序设计 摩斯密码解密
描述 摩斯密码(morse code),又称摩斯电码.摩尔斯电码(莫尔斯电码),是一种时通时断的信号代码,通过不同的信号排列顺序来表达不同的英文字母.数字和标点符号:通信时,将英文字母等内容翻译成摩斯 ...
- java摩斯密码解密_[代码全屏查看]-摩斯密码转换-JAVA版
[1].[代码] [Java]代码 import java.util.HashMap; import java.util.Map; import org.apache.commons.lang3.St ...
- 密码加密解密(一)——摩斯密码
摩尔斯电码(又译为摩斯密码,Morse code)是一种时通时断的信号代码,通过不同的排列顺序来表达不同的英文字母.数字和标点符号. 摩斯编码: 1.加密方法 2.解密方法 要求:解密的时候要求能够自 ...
- Python-摩斯密码加密解密
文章目录 前言 一.摩斯密码表 [1]. encode.txt [2]. decode.txt 二.代码 前言 密码表只写了英文字母和数字,在百度的时候发现不同地方写的符号转换方式不大一样. 你也可以 ...
- 摩斯密码Java/Python实现
摩斯密码Java/Python实现 摩斯密码Java/Python实现 摩斯密码Java/Python实现 前言 摘自<犯罪大师>谜题关卡 一.Java实现 二.Python实现 总结 前 ...
- 一个五层加密过的表白恢复密码解密的过程
今天在贴吧看到一篇2009年的帖子,并且这篇帖子至今还有人回复 内容是一个男生向一位古典学专业的女生表白后,女生叫这男生解密一段被摩斯密码加密过的密码就会跟男生约会.我这里就不多说了,因为已经有人解密 ...
- 7.2 摩斯密码(project)(已更新)
本关任务:编写程序,将英文句子转换成摩尔斯电码的小程序. 相关知识 摩斯密码 摩斯密码(又译为摩尔斯电码,Morse code)是一种时通时断的信号代码,通过不同的排列顺序来表达不同的英文字母.数字和 ...
最新文章
- numpy.ndarray.reshape()torch.Tensor.reshape()与numpy.ndarray.view()torch.Tensor.view()的区别(view_as())
- 对clear float 的理解
- 累积分布函数_C7: 概率函数和分布函数Distribution Function
- IaaS, PaaS和SaaS公司都做些什么
- 轻量级数据交换格式JSON
- android菜单详解四:子菜单
- editview只输入英文_入门小百科丨如何在电脑/手机输入日语
- 从 dig(nslookup) bind —— windows 下的域名解析服务器信息的查看
- [转]Git使用基础篇
- ovirt4.4.10安装配置USB重定向
- SQL创建触发器以及触发器的使用实例+详解
- 360浏览器的极速模式和兼容模式的区别
- 究竟什么是冯诺依曼瓶颈(von Neumann Bottleneck)?
- .NET Framework各个版本(1.0 - 2.0)
- 135编辑器如何插入文件
- arcgis把jpg转成栅格图像_[转载]在ArcGIS中配准(TIF、JPEG)栅格图像并矢量化(转)...
- oracle忘记密码找回
- 贵州大学计算机研究生排名,贵大计算机研究生怎么样?
- 【Unity】NGUI/UGUI 小地图制作
- freeCAD学习笔记三:复制草图中的对象