码迷,mamicode.com
首页 > 编程语言 > 详细

Python编程练习:编程实现恺撒密码

时间:2018-09-20 22:56:22      阅读:521      评论:0      收藏:0      [点我收藏+]

标签:bubuko   style   技术分享   分享   方法   加密   替换方法   strong   .com   

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

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

 

Python编程练习:编程实现恺撒密码

标签:bubuko   style   技术分享   分享   方法   加密   替换方法   strong   .com   

原文地址:https://www.cnblogs.com/xiaoyh/p/9683723.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!