凯撒密码加密解密python
时间: 2024-09-22 11:04:37 浏览: 73
凯撒密码是一种简单的替换式加密技术,通过将明文中的每个字母按照固定的位移进行替换来实现加密。在Python中,我们可以创建一个函数来完成这个过程,包括加密和解密。
**加密(Caesar Cipher)**:
```python
def caesar_encrypt(text, shift=3):
encrypted_text = ""
for char in text:
if 'a' <= char <= 'z':
new_char = chr(((ord(char) - ord('a') + shift) % 26) + ord('a'))
elif 'A' <= char <= 'Z':
new_char = chr(((ord(char) - ord('A') + shift) % 26) + ord('A'))
else:
new_char = char
encrypted_text += new_char
return encrypted_text
# 示例
plaintext = "Hello, World!"
shift = 3
encrypted = caesar_encrypt(plaintext, shift)
print("加密后的文本:", encrypted)
```
**解密(Caesar Decryption)**:
```python
def caesar_decrypt(encrypted_text, shift=3):
return caesar_encrypt(encrypted_text, -shift)
decrypted = caesar_decrypt(encrypted, shift)
print("解密后的文本:", decrypted)
```
在这个例子中,加密时使用了`shift`作为偏移量,解密时则需要同样的偏移量取负数。注意,这种方法只适用于英文,因为大写字母和小写字母的处理分开。
阅读全文