编写python程序,建立影射表,实现凯撒加密,即每个字母替换为后面第k个,从而实现加密效果。
时间: 2024-10-24 15:16:22 浏览: 25
凯撒密码加密和解密python实现源码.zip
在Python中,我们可以创建一个字典来作为映射表,然后使用这个表对输入字符串进行凯撒加密。凯撒加密是一种简单的位移式加密技术,每个字符都按照指定的位数向后移动。下面是一个基本的实现示例:
```python
def caesar_cipher(text, shift):
# 创建映射表,英文字母a-z对应整数0-25
mapping = {chr(i): chr((i - ord('a') + shift) % 26 + ord('a')) for i in range(ord('a'), ord('z')+1)}
mapping.update({chr(i): chr((i - ord('A') + shift) % 26 + ord('A')) for i in range(ord('A'), ord('Z')+1)})
encrypted_text = ""
for char in text:
if char.isalpha():
encrypted_text += mapping[char]
else:
encrypted_text += char # 保持非字母字符不变
return encrypted_text
# 示例:将文本"hello world"加密,位移量为3
plaintext = "hello world"
shift = 3
encrypted_text = caesar_cipher(plaintext, shift)
print(f"原文: {plaintext}")
print(f"加密后的文本: {encrypted_text}")
阅读全文