Мне нужна помощь в определении того, что не так с моим кодом! ('int' issue) [закрыто]

i am havi def draw_poly ( t , n , size ): для s in ( n ): t . вперед ( sz ) t . left ( 45 ) draw_poly ( liz , 8 , 50 ) ga для s in ( n ): запишите, почему мой код ошибочен.

dictionary

Я пытаюсь сделать октогон, но он продолжает давать мне ошибку «int», которая не является итерируемой ».

Если бы вы могли помочь, я был бы всегда благодарен, спасибо.

python,int,

-3

Ответов: int


2

Для цикла:

1

Ожидает nбыть какая - то Iterable: а 2, ..., nи т.д., но вы передаете целое ( int) - отсюда и ошибки.

Если вы хотите , sчтобы принимать значения 0, 1, 2, range(), nто вы должны использовать функцию , чтобы произвести итерацию последовательности чисел до числа , перешедшего в него.for s in range(n):

Поэтому, вероятно, вы хотите:

s

который позволит вам работать с целочисленной переменной sв этом блоке кода.


Если вы хотите отлаживать свой код, он часто помогает распечатать значения переменных, чтобы проверить, что они оценивают то, что, по вашему мнению, должно быть.

Например,

for i in range(4):
    print(i)

дает:

0
1
2
3

что и следовало ожидать.


0

Правильный int iterable будет range (int), поэтому используйте это: for s in range(n):

Для будущего использования range(): эта функция создает список итерируемых объектов int. В некоторых случаях использование xrange()лучше, особенно для больших петель. Т.е. range(1000000000)создает огромный объект в памяти, пока xrange(1000000000)он не работает, хотя он работает аналогичным образом, давая вам номера int по одному.

питон, INT,
Похожие вопросы