Я только что начал с графического модуля pythons Turtle, и я столкнулся с проблемой не с самой Черепахой, я не думаю, но мой алгоритм стилизации. Я использую window.colormode (255), который является удивительным и отлично работает, когда я повторяю от красной до синей в моей программе, увеличивая синюю переменную и уменьшая красную переменную после каждого цикла.python черепаха графика, итерация через индекс цвета, бросающая ошибку
Я бегу в проблему с моим фильтром, который должен полностью изменить порядок цвета инкрементор/decrementor (я хочу, чтобы перейти от синего назад к красному когда г = 0 и б = 255):
Вот код рисовать:
counter = 1
firstlength = 1
secondlength = 1
thirdlength = 1
fourthlength = 1
fifthlength = 1
colorList = [255,0,0] # r g b
f = 0 # index for colorlist
for i in listOfTurtles:
i = turtle.Turtle()
i.pencolor(colorList[0], colorList[1], colorList[2])
i.speed(0) # no turn animations
i.left(counter)
i.forward(firstlength)
i.left(15)
i.forward(secondlength)
i.left(15)
i.forward(thirdlength)
i.left(15)
i.forward(fourthlength)
i.left(15)
i.forward(fifthlength)
counter += 1
firstlength += .1
secondlength += .11
thirdlength += .12
fourthlength += .13
fifthlength += .14
Вот проблема с перебором цвета пера (используя ответ ниже):
blueUp = True
if blueUp == True:
colorList[0] -= 1
colorList[2] += 1
if colorList[0] <= 1:
blueUp = False
else:
colorList[0] += 1
colorList[2] -= 1
if colorList[2] <= 0:
blueUp = True
однако, этот фильтр я настроил не Флиппины g инкремент/декремент цвета при необходимости; что приводит к ошибке «плохой цветовой последовательности»: (-1, 0, 256)
Так что я знаю, что он увеличивал мою голубую 1 цифру слишком высоко, а мой красный слишком низкий на первом проходе, а затем ошибка, но Я не уверен, как это исправить. Я играл со значениями> и делал их выше (чтобы поймать около 5 или 250), но я не получаю результатов.
Я полностью открыт для совершенно разных способ написать это, как я уверен, что я придумал самый худший из возможных способов решения этой проблемы