凯撒密码加密

时间:2020-04-02 10:55:18

标签: python

我目前停留在Caesar密码上。 我需要加密用户输入的味精,然后根据输入的内容在1-25之间切换。 我到目前为止的当前代码是

toLowerCase

我试图使它忽略非字母字母,并在输出中按原样显示它们

例如输入时

“ The 123”(移动25)

我想要结果

“ sdg 123”

但是使用我当前的代码,它会打印

“ maaJKL”

1 个答案:

答案 0 :(得分:0)

更改

type

@Autowired

那应该只对字母字符而不是字母数字进行转换,而只是附加非字母字符。

您问的另一个问题是,为什么当它环绕在字母的末尾时没有得到想要的字符,是因为您只是将其设置为if not char.isalnum(): continue 。您需要将其减少到字母范围内。为此,而不是

if not char.isalpha()
  cipher += char
  continue

您应该拥有

ord("a")

这仍然不能完全为您提供特定示例所需的输出,但这是因为大写字符的数字值。您需要包含代码以分别处理这些代码,或者在开始时将所有内容都转换为小写。

相关问题