编写函数Caesar(string,n)对字符串string进行凯撒加密
时间: 2024-01-21 12:16:47 浏览: 66
以下是用 Python 编写的 Caesar 函数实现:
```python
def caesar(string, n):
"""
:param string: 待加密的字符串
:param n: 加密密钥,整数类型,表示字符向右移动的位数
:return: 加密后的字符串
"""
result = ""
# 遍历字符串中的每个字符
for char in string:
# 如果是字母,则进行加密操作
if char.isalpha():
# 将小写字母转换为数字 0-25,再加上密钥,最后对 26 取模得到新的字母的数字编码
new_char_code = (ord(char.lower()) - 97 + n) % 26
# 将数字编码转换为新的字母
new_char = chr(new_char_code + 97)
# 如果原来的字母是大写,则将新的字母也转换为大写
if char.isupper():
new_char = new_char.upper()
result += new_char
else:
# 如果不是字母,则直接添加到结果中
result += char
return result
```
示例:
```python
string = "Hello, World!"
n = 3
encrypted = caesar(string, n)
print(encrypted) # 输出:Khoor, Zruog!
```
在上述示例中,原始字符串为 `"Hello, World!"`,加密密钥为 `3`,加密后的字符串为 `"Khoor, Zruog!"`。
阅读全文