【凯撒密码解密】Python

【凯撒密码解密】首先接收用户输入的加密文本,然后对字母a-z和字母A-Z按照密码算法进行反向转换,同时输出。(加密的密码算法:将信息中的每一个英文字符循环替换为字母表序列中该字符后面的第三个字符,即原文字符A将被替换为D、原文字符B将被替换为E、原文字符C将被替换为F,以此类推,本题要求根据此密码算法实现反向转换,比如用户输入密文:Wklv lv dq hafhoohqw Sbwkrq errn.程序输出:This is an excellent Python book.)

etxt = input("请输入加密后文本: ")
print("请输出解密后文本: ")
for p in etxt:
    if "a" <= p <= "z":
        print(chr(ord("a")+(ord(p)-ord("a")-3)%26), end='')
    elif "A" <= p <= "Z":
        print(chr(ord("A")+(ord(p)-ord("A")-3)%26), end='')
    else:
        print(p, end='')

ord() 函数是 chr() 函数(对于8位的ASCII字符串)或 unichr() 函数(对于Unicode对象)的配对函数,它以一个字符(长度为1的字符串)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值

这道题就是26个字母向后对应3位
A->D
B->E
C->F

W->Z
X->A
Y->B
Z->C

发布了47 篇原创文章 · 获赞 7 · 访问量 4259

猜你喜欢

转载自blog.csdn.net/LiuLong0907/article/details/104865063
今日推荐