字符串方法应用:恺撒密码(所有字母向后平移6位)
时间: 2023-06-01 07:06:03 浏览: 141
恺撒密码可以通过字符串方法进行简单加密和解密操作。加密时,对于要加密的字符串中每个字符,将其ASCII码值加上6(或者向后平移6位),获得新的字符,然后将所有新字符拼接在一起即为加密后结果。解密时,对于要解密的字符串中每个字符,将其ASCII码值减去6(或者向前平移6位),获得原始字符,然后将所有原始字符拼接在一起即为解密后结果。
以下是Python代码示例:
# 加密函数
def caesar_encrypt(text):
result = ''
for char in text:
if char.isalpha():
new_char_code = ord(char) + 6
if char.islower():
if new_char_code > ord('z'):
new_char_code -= 26
else:
if new_char_code > ord('Z'):
new_char_code -= 26
result += chr(new_char_code)
else:
result += char
return result
# 解密函数
def caesar_decrypt(text):
result = ''
for char in text:
if char.isalpha():
new_char_code = ord(char) - 6
if char.islower():
if new_char_code < ord('a'):
new_char_code += 26
else:
if new_char_code < ord('A'):
new_char_code += 26
result += chr(new_char_code)
else:
result += char
return result
# 测试
text = 'hello, world!'
encrypted_text = caesar_encrypt(text)
decrypted_text = caesar_decrypt(encrypted_text)
print(text)
print(encrypted_text)
print(decrypted_text)
# 输出:
# hello, world!
# noccy, cuxot!
# hello, world!
阅读全文