是什么原因导致多余的重复字母?

问题描述 投票:0回答:1

它会尝试不同的移位,并显示出来让用户选择正确的解密词,但我不明白是哪个部分在第一次显示后强制添加了'ABC',移位是否有问题?


number_letter = ''
shift = 1

word = 'ABC '
    # input('Please enter a secret message to get decryption possibilities: ')

while shift < 20:

    alphabet = word

    for letter in alphabet:

        number_letter += chr(ord(letter) + shift)

    print('word: ' + number_letter)
    print('Shift: ' + str(shift))

    shift += 1
    number_letter = word

python-3.x pycharm ascii
1个回答
0
投票

你必须使 number_letter = '' 最后一行 number_letter = word为了清除变量。


0
投票

Teo已经基本回答了这个问题。下面是一些额外的信息和代码。在你的最后一行,你设置了变量 number_letterword然后,在下一次迭代中,你将新的字母(从 alphabet)至 word. 相反,你想完全清除这个变量。

下面是加入了输入的更新代码。

number_letter = ''
shift = 1
word = input(str('Please enter a secret message to get decryption possibilities: '))

while shift < 20:
    alphabet = word
    for letter in alphabet:
        number_letter += chr(ord(letter) + shift)

    print('word: ' + number_letter)
    print('Shift: ' + str(shift))

    shift += 1
    number_letter = ""
© www.soinside.com 2019 - 2024. All rights reserved.