python - Python Turtle 如何编程让它自动下降?
问题描述
我必须编写一个绘制三角形的函数。我设法很好地绘制了彼此相邻的三角形,但是我无法以三角形彼此下方的方式对其进行编程。或者至少不会自动运行。
我是这样做的:
import turtle
otto = turtle.Turtle()
def triangle(t, l):
t.color("cadetblue")
t.begin_fill()
for i in range(3):
t.fd(l)
t.lt(360/3)
t.end_fill()
def pile_triangle (t,l):
for i in range(1):
triangle(t, l)
t.penup()
t.goto(0,-70)
t.pendown()
for i in range(1):
triangle(t, l)
t.penup()
t.goto(0,-140)
t.pendown()
for i in range(1):
triangle(t, l)
t.penup()
t.goto(0,-210)
t.pendown()
for i in range(1):
triangle(t, l)
otto = turtle.Turtle()
pile_triangle(otto, 80)
turtle.mainloop()
turtle.bye()
因此,如您所见,当 l 的值增加时,会出现间隙或三角形重叠。可以做不同的事情吗?所以它绘制了四个三角形并匹配长度 l?
解决方案
这是你想要的吗?
import turtle
def triangle(t,l):
t.color("cadetblue")
t.begin_fill()
t.lt(360/6)
for i in range(3):
t.lt(-360/3)
t.fd(l)
t.end_fill()
t.penup()
t.lt(-360/3)
t.fd(l)
t.lt(-360/3)
t.fd(l/2)
t.lt(180)
otto = turtle.Turtle()
for i in range(3):
triangle(otto,50)
推荐阅读
- ios - 如何让 App Store Reviewers 使用 Stripe 测试 App?
- c# - 用字典创建交叉表结构
- python - 使用 tplquad 对具有 3 个以上参数的函数进行三重积分
- bash - 如何处理文件夹结构中与模式匹配的所有文件?
- project-reactor - 如何使 expectComplete() 事件失败并抛出错误?
- java - 如何从存储过程获取多个结果列表到 Spring Boot 端
- mongoose - 如何使用项目删除已填充文档的文件
- actionscript-3 - 让秒针在倒数计时器上旋转而不是滴答作响
- apache-spark - Spark集群模式下如何处理日志
- r - 满足条件如何保留一行并删除其他行