Python编程练习:编程实现恺撒密码
2024-08-21 22:12:50
问题描述:凯撒密码是古罗马凯撒大帝用来对军事情报进行加解密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列中该字符后面的第三个字符,即,字母表的对应关系如下:
原文: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
密文:D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
对于原文字符P,其密文字符C满足如下条件:C=(P+3) mod 26
上述是凯撒密码的加密方法,解密方法反之,即:P=(C-3) mod 26
假设用户可能使用的输入仅包含小写字母a~z和空格,请编写一个程序,对输入字符串进行凯撒密码加密,直接输出结果,其中空格不用进行加密处理。使用input()获得输入。
示例:
源码:
Str = input()
for i in range(0, len(Str)):
if Str[i] == ' ':
print(' ', end="")
elif Str[i] in ['x', 'y', 'z']:
# print('{}'.format(chr(ord(Str[i]) - 23)), end="") #另一种写法
print(chr(ord(Str[i])-23),end='')
else:
# print('{}'.format(chr(ord(Str[i]) + 3)), end="") #另一种写法
print(chr(ord(Str[i])+3),end='')
最新文章
- SPFA
- [Search Engine] 搜索引擎技术之倒排索引
- JavaScript强化教程——jQuery AJAX 实例
- iOS开发 JSonKit does not support Objective-C Automatic Reference Counting(ARC)
- qt-5.6.0 移植之实现板子与ubuntu主机通过网络进行文件传输
- spring boot注解 --@EnableAsync 异步调用
- 15个Linux Wget下载实例终极指南
- [ActionScript3.0] 为内建类添加方法
- CentOS用户权限管理--su与sudo
- c/c++ define用法
- iOS开发之静态库.a的制作教程
- bzoj1303
- OpenCV程序在Debug时出现「PDB文件无法加载」的一个解决方法
- IoC容器的接口设计
- Python小爬虫——抓取豆瓣电影Top250数据
- python—— 写入错误UnicodeEncodeError的解决办法
- 平衡树Splay
- 有趣的filter
- uvm设计分析——tlm
- The difference between the request time and the current time is too large.阿里云oss上传图片报错