must be str, not int

317 просмотра
0
0 Комментариев

Есть код

n = input("n=")
lst=[2]
for i in range(3, n+1, 2):
    if (i > 10) and (i%10==5):
        continue
    for j in lst:
        if j*j-1 > i:
            lst.append(i)
            break
        if (i % j == 0):
            break
    else:
        lst.append(i)
print (lst)

Traceback (most recent call last):
File «C:/Users/red.iguana/PycharmProjects/test/untitled/dsds.py», line 3, in

for i in range(3, n+1, 2):

TypeError: must be str, not int

Выдает эту ошибку, помогите с программой, уверен будут еще ошибки после фикса этой. Python 3


Добавить комментарий

1 Ответы

Python Опубликовано 16.12.2018
0

Функция input() считывает строку, а вы с этой строкой пытаетесь работать как с числом. Преобразуйте строку в число вот так int(строка). То есть замените строчку

n = input("n=")

на

n = int(input("n="))

Больше ошибок вроде нету: Ideone

Добавить комментарий
Напишите свой ответ на данный вопрос.
Scroll Up