python加密规则ascii码值加5_Python使用编码加密输入数据
1.指定方式加密数据
'''
能够加密的内容是英文和汉字。同时加密并且解密
就是说,一段话中既有中文又有英文,标点符号不用处理。
加密规则,获取ascii码数字,中间用|分割
# 思路提示:
print(ord("我"))
print(chr(25105))
'''
'''
我的xinxi,怎么yang??你~!@#$kankan
25105|30340|120|105|110|120|105|,|24590|20040|121|97|110|103|?|65311|20320|~|!|@|#|$|107|97|110|107|97|110|
'''
#加密
def my_encode(info):
new_str=''
for i in my_info:
news=ord(i)
#确定英文字母和汉字在ascii码中的位置
if 64
new_str += str(news)+'|'
else:
new_str +=i+'|'
return new_str
#解密
def my_decode(info):
de_str = ''
str_list = info.split('|')[0:-1]
for i in str_list:
#由于英文字母和汉字通过ascii编码后其字符长度都是大于1的
#通过这个方法判断英文字母、汉字和标点的区别
if len(i) > 1 :
de_str += chr(int(i))
else:
de_str += i
return de_str
if __name__=='__main__':
my_info = input('请输入要加密的信息:')
en_str = my_encode(my_info)
print(en_str)
de_str = my_decode(en_str)
print(de_str)
2.自定义加密数据规则
#加密输入的内容,加密时忽略英文字符
#加密方法:循环使用52个英文字母的ASCII码与对应输入的字符串的ASCII码相加
#加密
def my_encode(info):
#定义一个空字符,接受后面加密后的数据
en_str = ''
#定义一个空列表,接收输入数据分割后的列表
info_list = []
#定义要使用的英文字母
letter = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
#print(len(letter))
#判断输入的字符串可以分成几个部分
if len(info)%52 == 0:
n = len(info)//52
else:
n = len(info)//52+1
#根据letter分割输入的字符串
for i in range(1,n+1):
info_list.append(info[(i-1)*52:i*52])
#加密
for i in info_list:
for j in range(len(i)):
str_ord = ord(i[j])
letter_ord = ord(letter[j])
if 64
en_str += str(str_ord+letter_ord) + '|'
else:
en_str += i[j] + '|'
return en_str
#解密
def my_decode(info):
#定义一个空字符,接受后面解密后的数据
de_str = ''
#定义一个空列表,接收输入数据分割后的列表
info_list = []
#定义要使用的英文字母
letter = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
#以|分割传入的数据
info = info.split('|')[0:-1]
#判断输入的字符串可以分成几个部分
if len(info)%52 == 0:
n = len(info)//52
else:
n = len(info)//52+1
for i in range(1,n+1):
info_list.append(info[(i-1)*52:i*52])
#print(info_list)
#解密
for i in info_list:
for j in range(len(i)):
letter_ord = ord(letter[j])
if len(i[j])>1:
de_str += chr(int(i[j])-letter_ord)
else:
de_str += i[j]
return de_str
if __name__ == '__main__':
info = input('请输入数据')
en_str = my_encode(info)
print(en_str)
de_str = my_decode(en_str)
print(de_str)
python加密规则ascii码值加5_Python使用编码加密输入数据相关推荐
- python加密规则ascii码值加5_python的一些加密方法及python 加密模块
1base64 Python内置的base64模块可以实现base64.base32.base16.base85.urlsafe_base64的编码解码,python 3.x通常输入输出都是二进制形式 ...
- python 常用转义字符对照表 键盘各键对应的ASCII码值
python中常见的转义字符有以下几种 1.\:续行符: 2.\:反斜杠符号: 3.\':单引号: 4.\":双引号: 5.\a:响铃: 6.\b:退格: 7.\e:转义: 8.\000:空 ...
- python面试题-输入一个由n个大小写字母组成的字符,按Ascii码值从小到大排序,查找字符串中第k个最小Ascii码值的字母
题目: 输入一个由n个大小写字母组成的字符,按Ascii码值从小到大排序,查找字符串中第k个最小Ascii码值的字母(k>=1) 输入要求: 第一行输入大小写组成的字符串 第二行输入k, k必须 ...
- python代码实现ASCII码转换
☞☞☞点击查看更多优秀Python博客☜☜☜ ASCII码转换 python代码实现ASCII码转换 ==**文章导航:==** python代码实现ASCII码转换 自己刚开始学习python不久, ...
- 回车、换行、空格的ASCII码值(不同OS平台下文件换行定义)
回车.换行.空格的ASCII码值(不同OS平台下文件换行定义) 回车,ASCII码13(十六进制:0x0D),"\r" 换行,ASCII码10(十六进制:0x0A),"\ ...
- 微机原理:编写一个源程序,在键盘上按一个键,将从AL返回的ASCII码值显示出来,如果按下ESC键则程序退出。
微机原理:编写一个源程序,在键盘上按一个键,将从AL返回的ASCII码值显示出来,如果按下ESC键则程序退出. DATAS SEGMENT msg db 'Input ',0dh,0ah,'$' te ...
- 常用ASCII码值以及大小写字母转换
不知道大家在编程时需要使用到ASCII码但不记得是什么感觉,但对我来说就是 遇到啊,就遭老罪了~~~ 这里列出一些常用的ASCII码值,还有ASCII标准表,希望可以帮助到大家: a-z:97-122 ...
- 汉字的ascii码值范围_ASCII代码
同学们,我们都知道计算机只能接受二进制信息,很显然直接给出英文的ABCD计算机并不认识,那为何敲击键盘屏幕就可以显示出对应的字符呢? 为了解决这个问题,计算机采用一套编码,每个编码都是唯一的,对应键盘 ...
- 编写一个程序,要求输入一个ASCII码值(如66),然后输入相应的字符`
编写一个程序,要求输入一个ASCII码值(如66),然后输入相应的字符` #include <stdio.h>int main(void) {int ch;scanf("%d&q ...
最新文章
- 周末话题-元编程(metaprogramming)
- StringBuffer与StringBuilder
- NILMTK——经典数据集REDD介绍和使用
- [导入]Visual Studio 2005 Team Edition软件架构系列课程(1): 概述
- Win11系统自动暂停更新后想继续怎么办 Win11系统重新启动更新教程
- 模糊搜索简单算法fuzzywuzzy
- 数字电子技术基础 数电 第六版 课后答案(全)
- 【读书笔记】Vue.js 初次接触
- [Luogu3554] Poi2013 Triumphal arch
- Pacman基本使用
- python取值范围_python 数据库取值范围
- Iterative Deep Learning论文简读
- Tomcat漏洞ip:port/manager/html
- poi生成word 纸张方向横竖切换
- 【用pandas_alive几行代码绘制竞赛动图】全网首发pandas_alive数据可视化中文学习笔记合集,学不会来打我(配置好的venv虚拟环境+拿来即用测试代码+测试数据集+参数api解析)
- 电子制作——一个电调的诞生之路
- 重磅发布:史上首份揭秘微信公众号用户行为习惯研究报告
- 【腾讯阿里最全面试题】介绍下Synchronized、Volatile、CAS、AQS,以及各自的使用场景
- xmanager5链接linux配置,xmanager连接linux5的方法
- 快速插入数据mysql数据库