题目:

1、比如说,我想    “我喜欢月月”  这句话加密即:将字符串中的每个字符的unicode值全都向后移动三位,即unicode 值加3,然后输出。

2、将按照上述规则加密的文字解密即:将字符串中的每个字符的unicode值全都向前减三。

#caesarencode programme

while True:
txt = input("please type you word:") for i in txt:
if "a" <= i <="z":
#这是最关键的一步,通过对26取余数,可以再a-z,或者在A-Z,这26个英文字母中重复
print(chr(ord("a")+(ord(i)-ord("a")+3)%26),end = '')
elif "A"<= i <="Z":
print(chr(ord("A")+(ord(i)-ord("A")+3)%26),end = '')
else:
print(i,end = '') #anather way
txt = input("please input you number")
c = 0x4e00
di = {}
for i in range(20902): # 这也是加密的方法,用的是字典的方法,并且将你输入的每个文字,都转换成了对第一个中文字符的移动,当然这是对中文进行加密,中文的unicode 值范围在0x4e00-0x9fa5之间,一共有20902个文字,当然这里每个要加密的文字向后移动了10451个位置。
di[chr(c+i)] = chr((i+10451)%20902 + c) #将所有文字全部移动104521个位置,然后放在字典里,存起来。
print(len(di))
#对于输入的每个字符,从字典里去找。
for i in txt:
print(("输出(加解密后)" +di.get(i),end = '') #another way: print("输出(加解密后)" + "".join([di.get(i) for i in txt]))

我用的第二种方法:

当然还有解密的方法,未完待续。

py 二级习题(加密与解密)的更多相关文章

  1. py 二级习题(重新输出文本-----每行一句话)

    #需要的一小段文本 txt = "人生得意须尽欢,莫使金樽空对月.天生我才必有用,千金散尽还复来." #对文本进行分割,转换成列表形式 def txt_split(txt): li ...

  2. py二级习题(提取文本,并计数)

    with open(r"C:\Users\mike1\Desktop\practice_txt.txt","r",encoding = "gbk&qu ...

  3. py二级习题(猜猜我心中的数字)

    import random number = random.randint(1,100) while True: inputnumber = int(input("请输入你心中的数字:&qu ...

  4. py二级习题

    题目:使用turtle库的turtle.forward(),turtle.left(),函数绘制一个六边形,边长为100 像素 import turtle for i in range(6): tur ...

  5. py 二级习题(turtle)

    用turtle画一个正方形 import turtle turtle.penup() turtle.goto(-100,-100) turtle.pendown() turtle.begin_fill ...

  6. ASP.NET加密和解密数据库连接字符串

    大家知道,在应用程序中进行数据库操作需要连接字符串,而如果没有连接字符串,我们就无法在应用程序中完成检索数据,创建数据等一系列的数据库操作.当有人想要获取你程序中的数据库信息,他首先看到的可能会是We ...

  7. 命令行工具aspnet_regiis.exe实现加密和解密web.config

    命令行工具aspnet_regiis.exe,是一个类似于DOS的命令工具,称之为命令解释器.使用命令行工具加密和解密web.config文件中的数据库连接字符串时,只需要简单的语法命令即可. 加密语 ...

  8. 使用EncryptByPassPhrase和DecryptByPassPhrase对MS SQLServer某一字段时行加密和解密

    在数据库实现加密与解密的文章,Insus.NET较早前也有写过,可以在本博客中可以搜索得到. 今天使用EncryptByPassPhrase和DecryptByPassPhrase来简单实现. 在数据 ...

  9. AES —— JAVA中对称加密和解密

    package demo.security; import java.io.IOException; import java.io.UnsupportedEncodingException; impo ...

随机推荐

  1. Unity酱~ 卡通渲染技术分析(一)

    前面的话 unitychan是日本unity官方团队提供的一个Demo,里面有很好的卡通渲染效果,值得参考学习 上图是我整理出来的shader结构,可以看到Unity娘被拆分成了很多个小的部件,我想主 ...

  2. 《Python编程:从入门到实践》分享下载

    书籍信息 书名:<Python编程:从入门到实践> 原作名:Python Crash Course 作者: [美] 埃里克·马瑟斯 豆瓣评分:9.1分(2534人评价) 内容简介 本书是一 ...

  3. 一. 数据分片和路由 <<大数据日知录>> 读书笔记

    本章主要讲解大数据下如何做数据分片,所谓分片,即将大量数据分散在不同的节点,同时每个存储节点还要做副本备份. 而一般的抽象分片方法是, 先将数据映射到一个分片空间,这是多对一的关系,即一个数据分片区间 ...

  4. 领域驱动设计(DDD)实践之路(一)

    本文首发于 vivo互联网技术 微信公众号 链接: https://mp.weixin.qq.com/s/gk-Hb84Dt7JqBRVkMqM7Eg  作者:张文博 领域驱动设计(Domain Dr ...

  5. Xcode如何集成Pod教程

    一般开发都会用到很多第三方的框架,利用好他们可以加快开发进度,为了更方便将第三方的框架集成到我们的项目中,Pod是个很好的选择,现在说一下该怎么将Pod集成到我们的Xcode中 第一种方法 命令行的方 ...

  6. IT运维大会精华回顾 等保2.0时代掌控万物互联

    10月24日,由<网络安全和信息化>杂志社.IT运维网联合主办的“2019(第十届)IT运维大会”在北京新世纪日航酒店成功举行. 随着大数据.云计算.物联网.互联网+等快速发展,IT系统架 ...

  7. Arm开发板+Qt学习之路-析构函数和对话框一起时

    先记录一下代码 一:先将指针释放掉,在显示对话框 void MainWindow::canResponseError(SendCanMsgThread *sendCanMsgThread ){ std ...

  8. 4,ZooKeeper原理

    1,ZooKeeper概述 ··· 作用:     · ZooKeeper是为分布式应用程序提供的一个分布式开源协调框架,是Hadoop和Hbase的重要组件:     · 主要用于解决分布式集群中应 ...

  9. Python面试(基础)

    第一部分 必答题 1,简述列举了解的编程语言及语言间的区别? Python 解释型语言,代码简洁,易懂 C语言 编译型语言,底层语言 c++ 编译型语言,在C语言基础上加了面向对象 Java 混合型语 ...

  10. HTTPS原理及流程

    HTTPS为什么更安全:数据对称加密传出,对称密钥使用非对称加密协商. HTTPS就一定安全吗:不一定,如果用户在浏览器端执意访问证书可疑或过期的站点,就存在安全隐患. --- HTTPS实现原理:h ...