导语:
本文主要介绍了关于凯撒密码python编程简单的相关知识,包括凯撒加密算法流程图,以及python二级考凯撒密码吗这些编程知识,希望对大家有参考作用。
1、说明
凯撒密码是凯撒大帝用来解密军事情报的算法。用文本表序列中的第三个字符循环替换消息中的每个英文文本。有一组专用的字母对应关系。
2、注意
密文为大写字母,明文字母在变换加密前用大写字母代替。
如果是加密,则输出密文为大写字母。如果是解密,按照凯撒解密后转为小写,输出解密后的明文。
3、实例
from string import ascii_lowercase
s=input() # 输入一个字符串s
str1='' # 声明一个字符串str1并赋值''
for i in s: # 遍历s,我改了下源代码,这个更方便
if i in ascii_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() # 输入一个字符串s
str1='' # 声明一个字符串str1并赋值''
for i in s: # 遍历s,我改了下源代码,这个更方便
temp=ord(i) # 获取i对应的ascii码
if 97<=temp<=122 : # 如果i是小写字母, 因为字母a的ascii码就是97,z的ascii码是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学习指路:
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python中的概率分布有哪些类型?12/12
- ♥ 让表格复杂? Python中openpyxl的用处10/17
- ♥ 用Python用代码让微信地球转起来!12/14
- ♥ python list中if语句的用途09/19
- ♥ c盘是否安装了python12/23
- ♥ 什么是 python(x,y)08/26
内容反馈