修复字符串索引超出范围

时间:2017-12-30 19:57:55

标签: python

我试图将第13行中使用的随机整数转换为字符串,以便可以对其进行加密,但它一直在Python上说字符串索引超出范围。我使用的是最新版本的Python。

import random
result = ''
message = ''
choice = ''
key = ''
number = random.randint(1,50)

while choice != '2':
    choice = input("would you like to 1. encrypt message or 2. exit   ")

    if choice == '1':
        message = input("enter message to be encrypted    ")
        for i in range(0, len(message)):
            result = result + chr(ord(message[i]) - number)
        number = str(number)
        for i in range(0, len(number[i])):
            key = key key + int(ord(number[i])-7)
        print(result + "    press enter to close")
        print(key)
        end = input()
        break

1 个答案:

答案 0 :(得分:0)

我认为您的第16行存在问题。

for i in range(0, len(number[i])):

'i'只能在循环范围内访问。 len(number [i])对编译器没有意义,因此索引错误。 而是尝试:

for i in range(len(number)):

最好的问候