当前位置: 首页 > 图灵资讯 > 行业资讯> 凯撒密码python编程简单

凯撒密码python编程简单

来源:图灵python
时间: 2024-07-16 10:13:05

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电脑。