我正在尝试用Python编写加密。我的问题是密钥比消息短。因此,我应该从键

问题描述 投票:-4回答:1

我正在编写XOR加密。如果消息比密钥长,则它应该在密钥的开头重新开始。

message="wall"
key="code"
for m, k in zip(message,key):
    result=ord(m)^ord(k)
    print(result)  

我该如何解决这个问题?感谢您的帮助。

python for-loop encryption modulo
1个回答
0
投票

我不确定您想要什么,但是如果我认为是那样,有很多方法可以做到。保存大多数代码的最短方法之一是利用itertools.cycle()的优势,如下所示:

from itertools import cycle

message="wallaby"
key="code"
for m, k in zip(message, cycle(key)):
    result=ord(m)^ord(k)
    print(result) 
© www.soinside.com 2019 - 2024. All rights reserved.