秘密消息python编码逻辑

时间:2019-10-14 23:42:55

标签: python python-3.x

编码逻辑

alphabet = 'abcdefghijklmnopqrstuvwxyz'
newMessage = ''

message = input('Please enter a message: ')

key = input('Enter a key (1-26): ')
key = int(key)

for character in message:
  if character in alphabet:
    position = alphabet.find(character)
    newPosition = (position - key) % 26
    newCharacter = alphabet[newPosition]
    newMessage += newCharacter

“%26”的用法是什么。我知道通过使用此索引,索引会保持在0-26的范围内,但是想知道这是否特定于python以及它是否是数学逻辑或某些python表示法

1 个答案:

答案 0 :(得分:0)

% 26在编程语言数学中称为模运算符。本质上,这是除法的其余部分。

例如2 % 4 = 0(读作“两个MOD四”)。 2变成4两次,剩下0。

2 % 5 = 1,因为2进入5两次,其中(5 - (2 * 2))剩下1。

模数运算符在确定数字的奇偶校验时特别有用。如果数字为N % 2 = 0,则奇偶校验必须为偶数。否则,很奇怪。

在这种情况下,% 26强制算法保持在字母的范围内。否则,您将获得IndexError异常。

希望有帮助!