凯撒密码Python
时间: 2024-04-06 12:27:12 浏览: 27
凯撒密码是一种简单的替换密码,它是通过将字母按照一定的偏移量进行替换来加密和解密文本的。具体来说,凯撒密码将字母表中的每个字母都向后(或向前)移动固定的位置,这个移动的位置就是密钥。
下面是一个用Python实现凯撒密码的例子:
```python
def caesar_cipher(text, key):
encrypted_text = ""
for char in text:
if char.isalpha():
if char.isupper():
encrypted_text += chr((ord(char) - 65 + key) % 26 + 65)
else:
encrypted_text += chr((ord(char) - 97 + key) % 26 + 97)
else:
encrypted_text += char
return encrypted_text
# 加密示例
plaintext = "Hello, World!"
key = 3
ciphertext = caesar_cipher(plaintext, key)
print("加密后的文本:", ciphertext)
# 解密示例
decrypted_text = caesar_cipher(ciphertext, -key)
print("解密后的文本:", decrypted_text)
```
在上面的代码中,`caesar_cipher`函数接受两个参数:`text`表示要加密或解密的文本,`key`表示移动的偏移量。函数首先遍历文本中的每个字符,如果是字母,则根据大小写分别进行移位操作,并将结果拼接到`encrypted_text`字符串中。最后返回加密或解密后的文本。
请注意,这只是凯撒密码的一种简单实现,它只能对字母进行加密和解密,对于其他字符(如数字、标点符号等)会保持不变。此外,凯撒密码的安全性非常低,容易被破解,因此在实际应用中很少使用。