Python - берет каждый элемент в списке и добавляет его к целому числу - PullRequest
0 голосов
/ 02 июня 2018

Это моя задача: https://i.stack.imgur.com/qv6us.png

Я пытался извлечь каждый элемент из списка ASCII, используя z в качестве элемента списка, поэтому программа увеличивает z на единицу каждый раз, когда я идучерез цикл for.

ciphertext = []
z=0
for item in messagelist:                    # messagelist a list of characters

Если есть пробел, я хочу его игнорировать.

    if ' ' in messagelist:
        break

Затем я хочу добавить элемент в целое число: 'offsetfactor'.

    else:                                   # ascii list is a list of ascii codes/integers
    y = asciilist[z] + offsetFactor     # offset factor is a randomly generated integer
    print (y)

Тогда, если ответ будет больше 126, я получу минус 94 и превращу ответ в символ ASCII.Затем я хочу добавить все символы ASCII в список и преобразовать список в строку.

    if y > 126:
        y = y - 94
        asciichar = str(chr(y))         # turns y into an ascii character
        ciphertext.append(asciichar)    # adds the ascii character to a list called ciphertext
    else:
        asciichar = str(chr(y))        
        ciphertext.append(asciichar)
    z+=1
encrypted = str(ciphertext)                # turns ciphertext into a string
print ('Your encrypted message is: ',encrypted)

Похоже, это не работает, поскольку «зашифрованный» печатается в виде пустого списка.Я буду благодарен за любую помощь, так как мне потребовались годы, чтобы написать вопрос!

...