社会主义核心价值观的加解密工具
根据坛友的思路做的一个 Python 版本的社会主义核心价值观加解密工具,
能力有限,代码粗糙,大家将就着看看。
思路:1. 每个字符(不论中文英文)转成 16 位的二进制,不足的左边补零。
2. 然后拆成 4*4 的二进制字符串。
3. 转十进制,大于等于 11 的,拆分2个;不大于的补零。保证每个 2 位 十进制数
4. 于是得到 8 位 11 以内的十进制数,查社会主义list,即为加密结果。
效果图
[Python] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
def decoder(string): len_str = len (string) if len_str % 16 ! = 0 : return 0 result = '' for x in range ( 0 , len_str, 16 ): decode_char = string[x:x + 16 ] temp_int = [ENSTRS.index(decode_char[y:y + 2 ]) for y in range ( 0 , 16 , 2 )] int_list = [temp_int[x] + temp_int[x + 1 ] for x in range ( 0 , 8 , 2 )] bin_temp = [ bin (i).replace( '0b' , '') for i in int_list] binstr_list = [] for b in bin_temp: if len (b) < 4 : binstr_list.append(b.zfill( 4 )) else : binstr_list.append(b) binstr = ''.join(binstr_list) result = result + chr ( int (binstr, 2 )) return result def encoder(string): result = '' binstr_list = [b.replace( '0b' , '') for b in [ bin ( ord (c)) for c in string]] for binstr in binstr_list: len_binstr = len (binstr) if len_binstr < 16 : binstr = binstr.zfill( 16 ) temp_list = [binstr[start:start + 4 ] for start in range ( 0 , 16 , 4 )] int_list = [] for i in temp_list: i = int (i, 2 ) if i > = 11 : int_list.append( 11 ) int_list.append(i - 11 ) else : int_list.append( 0 ) int_list.append(i) result = result + ''.join([ENSTRS[index] for index in int_list]) return result ENSTRS = ( "富强" , "民主" , "文明" , "和谐" , "自由" , "平等" , "公正" , "法治" , "爱国" , "敬业" , "诚信" , "友善" ) while True : input_str = input ( "1. 加密 2. 解密\n请选择:" ) if input_str in [ 'eof' , 'EOF' , 'quit' , 'QUIT' , 'exit' , 'EXIT' ]: break elif input_str in [ '1' , '加密' ]: encode_str = input ( "请输入字符串:\n" ) result = encoder(encode_str) print ( "加密结果:\n{}" . format (result)) elif input_str in [ '2' , '解密' ]: decode_str = input ( "请输入加密字符串:\n" ) result = decoder(decode_str) print ( "解密结果:\n{}" . format (result)) else : print ( "输入有误!" ) |
ps: 觉得有点意思的小伙伴们,路过点个热心呗,蟹蟹了~~
1. 本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!36673262@qq.com
2. 本站所提供下载的资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
3. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有学币奖励和额外收入!
SEO站长网 » 社会主义核心价值观的加解密工具
SEO站长网 » 社会主义核心价值观的加解密工具