问题描述:凯撒密码是古罗马凯撒大帝用来对军事情报进行加解密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列中该字符后面的第三个字符,即,字母表的对应关系如下:

  原文: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='')

最新文章

  1. SPFA
  2. [Search Engine] 搜索引擎技术之倒排索引
  3. JavaScript强化教程——jQuery AJAX 实例
  4. iOS开发 JSonKit does not support Objective-C Automatic Reference Counting(ARC)
  5. qt-5.6.0 移植之实现板子与ubuntu主机通过网络进行文件传输
  6. spring boot注解 --@EnableAsync 异步调用
  7. 15个Linux Wget下载实例终极指南
  8. [ActionScript3.0] 为内建类添加方法
  9. CentOS用户权限管理--su与sudo
  10. c/c++ define用法
  11. iOS开发之静态库.a的制作教程
  12. bzoj1303
  13. OpenCV程序在Debug时出现「PDB文件无法加载」的一个解决方法
  14. IoC容器的接口设计
  15. Python小爬虫——抓取豆瓣电影Top250数据
  16. python—— 写入错误UnicodeEncodeError的解决办法
  17. 平衡树Splay
  18. 有趣的filter
  19. uvm设计分析——tlm
  20. The difference between the request time and the current time is too large.阿里云oss上传图片报错

热门文章

  1. select2插件用法
  2. Spring Boot Web应用开发 CORS 跨域请求支持:
  3. 201771010134杨其菊《面向对象程序设计(java)》第十六周学习总结
  4. redis---安装和开启和关闭
  5. OO第一单元三次作业总结
  6. DWR使用总结
  7. AX_ClassTemplate
  8. Servers无法打开
  9. bugku题目“cookie欺骗”
  10. ASP.NET获取POST提交过来的数据流,转换成Json格式的字符串