凯撒加密算法的原理是,把明文中每个英文字母替换为该字母在字母表中后面第k个字母,如果后面第k个字符超出字母表的范围,则把字母表首尾相接,也就是字母Z的下一个字母是A,字母z的下一个字母是a。要求明文中的大写字母和小写字母分别进行处理,大写字母加密后仍为大写字母,小写字母加密后仍为小写字母。
text = input("请输入要加密的文本: ")
key = int(input("请输入密钥(移动位数): "))
mitext = ""
# 遍历文本中的每个字符
for char in text:
if char.isalpha(): # 如果字符是字母
# 判断字母是大写还是小写
start = ord('A') if char.isupper() else ord('a')
# 执行加密并添加到结果字符串
mitext += chr((ord(char) - start + key) % 26 + start)
else:
# 如果字符不是字母,直接添加到结果字符串
mitext += char
print(f"加密后的文本: {mitext}")