如何用python编写凯撒密码 ?

刚学python... 刚学python 展开
 我来答
雁西楼
科技发烧友

2018-10-07 · 有一些普通的科技小锦囊
知道小有建树答主
回答量:1118
采纳率:73%
帮助的人:406万
展开全部

凯撒密码是对字母表整体进行偏移的一种变换加密。因此,建立一个字母表,对明文中每个字母,在这个字母表中偏移固定的长度即可得到对应的密文字母。

最基本的实现如下:

def caesarcipher(s: str,rot: int=3) ->str:
    _ = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
    encode = ''
    i = 0
    for c in s:
        try:
      雹李      encode += _[(_.index(c.upper()) + rot) % len(_)]
        except (Exception,) as e:
            encode += c
    return encode


print(caesarcipher('源链迟hellow'))
print(caesarcipher('KHOORZ', -3))

如果要求解密后保唤裤持大小写,那么,字母表_还需要包含所有小写字母并且index时不对c做upper处理.

同样的,也可以在字母表中追加数字,各种符号,空格等.

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式