你们能帮我解决这个python循环吗?这对我来说很困惑

时间:2019-12-02 18:19:51

标签: python-3.x loops

message = "ab"
key = "ab"
xor = ""
loop = 0
for bit in str(message):
    for sbit in str(key):        
        if bit == sbit:
            xor = xor+'0'
        else:
            xor = xor+"1"

我正在尝试在python中进行XOR函数(如果两个值相等/不同,则将其设置为0/1)。在这里,问题在于执行没有脱离内部循环。我尝试了代码,

message = "ab"
key = "ab"
xor = ""
loop = 0
for jbit in str(message):
    for sbit in str(key):        
        if jbit == sbit:
            xor = xor+'0'
            break
        else:
            xor = xor+"1"
            break

但是内部循环被重置,并且从头开始比较密钥,我不希望那样,我希望程序检查接下来的两个字母是否相等。 我希望你知道我的问题 -谢谢

1 个答案:

答案 0 :(得分:0)

您需要同时遍历字符串:

for bit, sbit in zip(message, key):
   if bit == sbit:
        xor = xor+'0'
    else:
        xor = xor+"1"