我正在尝试使用python中的turtle模块创建一个在屏幕上绘制五个球的程序。我正在尝试使用尽可能少的代码行,但是现在出现了我不理解的属性错误。
import turtle
import random
class turtles:
def __init__(self):
self.turtle.Pen()
self.color(random.randint(0.0, 1.0),random.randint(0.0, 1.0) ,random.randint(0.0, 1.0))
self.begin_fill()
self.circle(50)
self.end_fill()
t1= turtles()
def t1_circle():
t1.left(90)
t1.forward(250)
mycircle(random.randint(0.0, 1.0),random.randint(0.0, 1.0) ,random.randint(0.0, 1.0))
t1_circle()
我希望在屏幕上画一个显示随机颜色的球。
答案 0 :(得分:0)
您会收到此错误,因为class turtles没有属性'turtle'。当您指定self.turtle时,python需要在turtles类中定义的名为turlte的属性。 您可以在此here
中阅读更多内容我希望在屏幕上画一个显示随机颜色的球。
在这里,我将做上面提到的事情。您可以更改代码以满足您的确切要求。
run.py
答案 1 :(得分:0)
我正在尝试制作一个程序,使用该程序在屏幕上绘制五个球 python中的turtle模块。我正在尝试使用尽可能少的代码行 尽可能...
from turtle import *
from random import *
WIDTH, HEIGHT = getscreen().window_width() // 2, getscreen().window_height() // 2
penup()
for _ in range(5):
goto(randrange(50 - WIDTH, WIDTH - 50), randrange(50 - HEIGHT, HEIGHT - 50))
dot(100, (random(), random(), random()))
done()
对于实心圆,dot()
命令具有一些优点。它始终是一个实心圆,因此没有begin_fill()
和end_fill()
。您可以将颜色传递给dot()
函数。它在乌龟上打印给定的直径(不是 radius )居中的圆(而不是在 edge 类似于circle()
。