用Python编写简单凯撒密码程序并向后偏移3位
时间: 2024-03-01 19:51:19 浏览: 182
好的,以下是用Python编写简单凯撒密码程序并向后偏移3位的示例代码:
```python
plaintext = input("请输入明文:")
key = 3 # 向后偏移3位
ciphertext = ""
for i in plaintext:
# 判断字符是否为大写字母
if i.isupper():
ciphertext += chr((ord(i) - 65 + key) % 26 + 65)
# 判断字符是否为小写字母
elif i.islower():
ciphertext += chr((ord(i) - 97 + key) % 26 + 97)
# 非字母字符不做处理
else:
ciphertext += i
print("加密后的密文为:", ciphertext)
```
解释一下上面的代码:
1. 首先使用 `input()` 函数获取用户输入的明文。
2. 然后将密钥 `key` 的值设置为 3,这样就可以实现向后偏移3位字母的效果。
3. 使用一个 `for` 循环遍历明文中的每一个字符,根据字符的 ASCII 码值进行加密。
4. 如果字符是大写字母,则将它减去字母 A 的 ASCII 码值,加上密钥,再对 26 取模,最后加上字母 A 的 ASCII 码值,得到加密后的字符。
5. 如果字符是小写字母,则操作与大写字母相同,只是加上的是字母 a 的 ASCII 码值。
6. 如果字符不是字母,则直接将它加入密文中。
7. 最后使用 `print()` 函数输出加密后的密文。
希望这个示例代码能对你有所帮助!
阅读全文