我刚开始学Python龟。 我试图写我的名字“Idan”(大写字母),但我被困在“D”。
到目前为止这是我的代码:
import turtle
t = turtle.Turtle()
t.up()
t.backward(400)
t.left(90)
t.down()
t.forward(250)
t.right(90)
t.forward(62.5)
t.backward(62.5 * 2)
t.forward(62.5)
t.right(90)
t.forward(250)
t.right(90)
t.forward(62.5)
t.backward(62.5 * 2)
t.up()
t.backward(100)
t.right(90)
t.down()
t.forward(250)
for x in range(180):
t.forward(1)
t.right(1)
但当我运行它给我一个小半圆。
有没有办法让它做一个半圆形,这样会产生一个“D”
你的主要问题是,你的半圆是从海龟面朝上开始的,而不是从右边开始。在
for
循环之前添加一个t.right(90)
调用,您将更接近您想要的内容(您将得到类似P
的内容)。之后,您需要调整循环内的
forward
调用,以使循环达到您想要的大小(或者按照注释中建议的martineau,使用t.circle
而不是您自己的循环)。您可能需要进行一些计算来确定正确的距离(例如,将所需直径乘以math.pi
得到周长,然后除以用于构造周长的段数)。不是完美的,由尝试和错误造成,但它写下了名字:
在解决这样的问题时,我建议如下:
如果需要的话,在纸上仔细计划你的方块字体。这个 设计越简单,编写代码就越容易。
在代码中逻辑地分离字母——如果不是函数的话 在这一点上,至少分成单独的注释块。
让每个字母以乌龟指向同一方向开始 并根据需要进行调整,不要指望前一个 信。
使用虚拟坐标系简化绘图逻辑和 允许字母出现在不同大小的窗口中。如果没有 函数类似于
setworldcoordinates()
,然后简单地通过乘法器 高度和宽度。在你的设计中假设你想在以后添加更多的字母。
想想如果你想拼“DIAN”会发生什么-- 您需要更改多少代码,以及如何将其保留为 最少。
我下面的示例使用了您可能还没有学习过的功能,并不是要作为解决方案供您使用——而是要说明上面的想法。一、 e.尝试更改窗口大小、边框大小、宽度和高度、重新排列删除项等,并查看结果如何更改但仍然有效:
输出
相关问题 更多 >
编程相关推荐