填充颜色不适用于我的功能(Python乌龟图形)

问题描述 投票:0回答:1

fillcolor()在此功能中根本无法正常工作-我不知道为什么。它在我所有其他功能中都起作用:

from turtle import Turtle

from random import randint

t = Turtle()

def rocks():
    for i in range(5):
        t.penup()
        t.goto(randint(-300,0), randint(-200,0))

        for x in range(40):
            t.pendown()
            t.fillcolor("gray")
            t.fillcolor()
            t.begin_fill()
            t.forward(5)
            t.left(25)
            t.right(27)
            t.forward(5)
            t.right(20)
            t.end_fill()

    t.speed("fastest")

rocks()
python turtle-graphics
1个回答
0
投票

问题是您的循环中有begin_fill()end_fill() inside,这意味着它们正在尝试填充短线段。您需要它们around循环来填充整个形状:

from turtle import Turtle, Screen
from random import randint

def rocks(t):
    t.fillcolor('gray')

    for _ in range(5):
        t.penup()
        t.goto(randint(-300, 0), randint(-200, 0))

        t.begin_fill()
        for _ in range(15):
            t.pendown()
            t.forward(5)
            t.right(2)
            t.forward(5)
            t.right(22)
        t.end_fill()

screen = Screen()

turtle = Turtle()
turtle.speed('fastest')

rocks(turtle)

turtle.hideturtle()
screen.exitonclick()

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.