使用 Python 实现简单的凯撒密码加密解密

本篇博客将介绍如何使用 Python 编写一个简单的字符串加密解密程序,该程序基于凯撒密码算法,通过对字符进行移位操作实现加密和解密。

代码示例:

s = input('请输入字符串:')
n = len(s)
str1 = ''
for i in range(n):
    if s[i] in ('x', 'y', 'z'):
        str1 += chr(ord(s[i]) - 23)
    elif s[i] == ' ':
        str1 += s[i]
    else:
        str1 += chr(ord(s[i]) + 3)
print('加密/解密后的字符串:', str1)

代码解释:

  1. 获取输入:

    • 使用 input() 函数获取用户输入的字符串,并将其存储在变量 s 中。
  2. 计算字符串长度:

    • 使用 len() 函数获取字符串 s 的长度,并将其存储在变量 n 中。
  3. 初始化结果字符串:

    • 创建一个空字符串 str1,用于存储加密或解密后的结果。
  4. 遍历字符串并进行加密/解密操作:

    • 使用 for 循环遍历字符串 s 中的每个字符。
    • 对于每个字符 s[i],进行以下判断:
      • 如果字符是 'x'、'y' 或 'z',则将其转换为对应的 ASCII 码减去 23,再将结果转换为对应的字符,并将其添加到 str1 中。
      • 如果字符是空格,则直接将其添加到 str1 中。
      • 否则,将字符转换为对应的 ASCII 码加上 3,再将结果转换为对应的字符,并将其添加到 str1 中。
  5. 输出结果:

    • 使用 print() 函数输出加密或解密后的字符串 str1

凯撒密码算法原理:

凯撒密码是一种简单的替换加密技术,它通过将字母表中的每个字母移动固定数量的位置来进行加密。例如,如果我们将字母表向右移动 3 位,则字母 'A' 将被替换为 'D','B' 将被替换为 'E',以此类推。

在本代码示例中,我们使用了类似的原理,将字符的 ASCII 码进行移位操作,从而实现加密和解密。需要注意的是,该代码仅对字母进行了移位操作,对其他字符(如数字、符号等)不进行处理。

Python 字符串加密解密:凯撒密码算法实战

原文地址: https://www.cveoy.top/t/topic/f3XQ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录