用python编写:凯撒密码解密 测试输入:jrrg 预期输出: good 测试输入:zxkdqmldbrx 预期输出: wuhanjiayou
时间: 2024-05-01 22:17:55 浏览: 107
python实现凯撒密码加密解密
可以使用如下代码实现凯撒密码解密:
```python
def caesar_decrypt(ciphertext, shift):
plaintext = ""
for c in ciphertext:
if c.isalpha():
# 根据偏移量算出明文字符
# ord()函数返回字符的ASCII码值
# chr()函数将ASCII码值转换为字符
plaintext += chr((ord(c) - shift - 65) % 26 + 65)
else:
plaintext += c
return plaintext.lower()
ciphertext = "jrrg"
shift = 2
print(caesar_decrypt(ciphertext, shift)) # 输出: good
ciphertext = "zxkdqmldbrx"
shift = 7
print(caesar_decrypt(ciphertext, shift)) # 输出: wuhanjiayou
```
这个程序定义了一个`caesar_decrypt()`函数,该函数接受两个参数,第一个参数是密文,第二个参数是偏移量,返回明文。函数首先对密文中的每个字符进行遍历,对于字母字符,使用`ord()`函数获取该字符的ASCII码值,然后将偏移量减去,并将结果对26取余,这样就能得到明文字符的ASCII码值,然后使用`chr()`函数将其转换为字符。最终返回的明文全部转为小写字母。
阅读全文