pycharm实现凯撒密码加密解密
时间: 2023-07-25 09:22:05 浏览: 160
Python实现凯撒密码加密解密
下面是一个使用 PyCharm 实现凯撒密码加密解密的 Python 代码示例:
```python
def caesar_cipher(text, shift, action):
"""
实现凯撒密码加密解密
:param text: 要加密或解密的文本
:param shift: 移位数
:param action: 加密或解密操作,取值为 "encrypt" 或 "decrypt"
:return: 加密或解密后的文本
"""
result = ""
for char in text:
if char.isalpha():
if char.isupper():
result += chr((ord(char) - 65 + shift if action == "encrypt" else ord(char) - 65 - shift) % 26 + 65)
else:
result += chr((ord(char) - 97 + shift if action == "encrypt" else ord(char) - 97 - shift) % 26 + 97)
else:
result += char
return result
# 测试加密解密函数
message = "Hello, World!"
shift_amount = 3
encrypted_message = caesar_cipher(message, shift_amount, "encrypt")
print("加密后的文本:", encrypted_message)
decrypted_message = caesar_cipher(encrypted_message, shift_amount, "decrypt")
print("解密后的文本:", decrypted_message)
```
在上面的代码中,`caesar_cipher()` 函数接收三个参数:要加密或解密的文本 `text`、移位数 `shift` 和操作类型 `action`,操作类型为 `"encrypt"` 表示加密,为 `"decrypt"` 表示解密。函数使用了 ASCII 码表中字母的编号来实现移位,其中大写字母 A 的编号为 65,小写字母 a 的编号为 97,移位后的字符编号需要对 26 取模,然后再转成对应的字符。
阅读全文