CTF之普通字符串到摩斯密文的转换

原理

看了上一篇文章我们也知道了摩斯密文跟普通字符串之间的对应关系,因此我们在这里就可以做一些工作了.
同样是使用了python的字典结构

使用方法

输入一串字符,自动就打印出了字符对应的摩斯密码

代码如下:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
from __future__ import print_function
a = str(raw_input("input the string:"))
#s = a.split(" ")
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',
        '.----': '1',
        '..---': '2',
        '...--': '3',
        '....-': '4',
        '.....': '5',
        '-....': '6',
        '--...': '7',
        '---..': '8',
        '----.': '9',
        '-----': '0',
        '..--..': '?',
        '-..-.': '/',
        '-.--.-': '()',
        '-....-': '-',
        '.-.-.-': '.'
        };
for item in a:
    print (item,end='')
    for dic in dict:
        if(dict[dic]==item):
            print (dic)
    #print (item)
#print (s)

你可能感兴趣的:(python,CTF)