Я хочу, чтобы заполнить круги разными цветами, используя массив в Python Turtle - PullRequest
0 голосов
/ 13 марта 2019

enter image description here Я сделал 4 таких круга, используя жесткий код для каждого круга, но это неэффективно.

Это мой код, но я запутался, как получить доступ к массивуцвет и массив координат x & y, чтобы к нему можно было обращаться по всему индексу.

from turtle import *
setup()
title('4 CIRCLES')

col = ['yellow', 'green', 'blue', 'red']
x = [100,65,30,5]
y = [100,65,30,5]

def lingkaran(number, rad = 50) :
    for cir in range(number) :
        penup()
        goto(x, y)
        pendown()
        color(col)
        begin_fill()
        circle(rad)
        end_fill()
        lingkaran(4)

hideturtle()
done()

Я хочу упростить доступ к массивам, надеюсь, кто-то может помочь.Спасибо

1 Ответ

0 голосов
/ 13 марта 2019

Так как мы смотрим на фиксированное расстояние между кругами, я бы бросил массив координат в пользу начальной позиции и смещения. Тогда я бы просто зациклился на массиве цветов:

from turtle import *

title('4 CIRCLES')

COLORS = ['yellow', 'green', 'blue', 'red']

def lingkaran(colors, position, offset, radius, pen_width=3):
    width(pen_width)

    for color in colors:
        penup()
        goto(position)
        pendown()

        fillcolor(color)
        begin_fill()
        circle(radius)
        end_fill()

        position += offset

lingkaran(COLORS, Vec2D(-100, 100), Vec2D(35, -35), 50)

hideturtle()
done()

enter image description here

Но есть много способов решить эту проблему.

...