写一个凯撒密码加密和解密的python程序
时间: 2024-04-10 17:34:24 浏览: 109
当然可以!下面是一个简单的凯撒密码加密和解密的 Python 程序:
```python
def encrypt(plain_text, shift):
encrypted_text = ""
for char in plain_text:
if char.isalpha():
if char.isupper():
encrypted_text += chr((ord(char) - 65 + shift) % 26 + 65)
else:
encrypted_text += chr((ord(char) - 97 + shift) % 26 + 97)
else:
encrypted_text += char
return encrypted_text
def decrypt(encrypted_text, shift):
decrypted_text = ""
for char in encrypted_text:
if char.isalpha():
if char.isupper():
decrypted_text += chr((ord(char) - 65 - shift) % 26 + 65)
else:
decrypted_text += chr((ord(char) - 97 - shift) % 26 + 97)
else:
decrypted_text += char
return decrypted_text
# 示例用法
text = "Hello, World!"
shift = 3
encrypted = encrypt(text, shift)
print("加密后的文本:", encrypted)
decrypted = decrypt(encrypted, shift)
print("解密后的文本:", decrypted)
```
这个程序中的 `encrypt` 函数用于加密明文,`decrypt` 函数用于解密密文。加密和解密都是基于指定的位移 `shift` 来进行的,即将字母表中的每个字母按照位移进行移动。
注意,这个程序只对字母进行加密和解密,其他字符保持不变。另外,程序中的加密和解密函数都支持大小写字母。
阅读全文