我正在编写XOR加密。如果消息比密钥长,则应在密钥的开头重新开始。
message="wall"
key="code"
for m, k in zip(message,key):
result=ord(m)^ord(k)
print(result)
我该如何管理这个问题? 感谢您的帮助。
我不完全确定你想要什么,但如果它是我认为的,有很多方法可以做到。保留大部分代码的最短代码之一利用了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)