1、说明
凯撒密码是古罗马凯撒大帝为了解密军事情报而使用的算法。用文字表序列中的第三个字符替换信息中的每个英语单词。有一套特殊的字母表对应关系。
2、注意
密文是大写字母,在变换加密之前用大写字母代替明文字母。
若为加密,则输出的密文为大写字母,若为解密,则按凯撒解密,转换为小写,输出解密后的明文。
3、实例
fromstringimportascii_lowercase s=input()#输入字符串ss str1=''#声明一个字符串str1并赋值#39;' foriins:#遍历s,我改了下源代码,这更方便 ifiinascii_lowercase:#假如i是小写字母,string.ascii_lowercase直接对应于从a到z的字符串 temp=ord(i)#获取i对应的ascii码 num=(temp-97+3)%26#凯撒加密,每个字母向后移动三位,a->d,b->e...x->a,y->b,z->c str1=chr(num+97)#ascii码a从97开始,所以上一步是-97,这一步是+97 print(str1,end="")#显示结果 else: print("",end="")#假如不是小写字母,直接打印空白 #如果s的长度特别长,每次从a-z长度的字符串中找到效率都不是很高,可以尝试以下代码,所有功能都一样 s=input()#输入字符串ss str1=''#声明一个字符串str1并赋值#39;' foriins:#我改变了下源代码,遍历s,这个更方便 temp=ord(i)#获取i对应的ascii码 if97<=temp<=122:#如果i是小写字母,因为字母a的asci码是97,z的asci码是122 num=(temp-94)%26#凯撒加密,应该是每个字母向后移动三位,a->d,b->e...x->a,y->b,z->c str1=chr(num+97) print(str1,end="")#显示结果 else: print("",end="")#如果不是小写字母,直接打印空白
以上是对凯撒密码python编程的简要介绍。我相信你对凯撒密码有了初步的了解。学习后试试。更多Python学习指导:python基础教程
本文教程操作环境:windows7系统Python 3.9.1,DELL G3电脑。