Python龟圈函数
Python turtle circle function
所以我正在读一本书来学习 python,我读到了关于模块 turtle 的部分内容。
所以在解释完之后,它会给你一些练习。
其中之一是定义一个创建正多边形的函数。
我让这个工作。
import turtle
bob = turtle.Turtle()
def polygon(t, l, n):
angle = 360/n
for i in range(n):
t.fd(l)
t.lt(angle)
polygon(bob, 40, 5)
例如这画了一个正五边形。
下一个练习要求你画一个 "circle" 改变多边形的边数。
问题是有时它不起作用并且 polygon/circle 不关闭。
我试图通过多次更改长度和边数或仅更改两者之一来找到解决方案,但我没有成功。
例如,lenght = 10 和 n°sides = 140 不起作用,而 lenght = 20 和 n°sides = 120 起作用。
有人可以解释一下吗?
找到解决方案。
作为初学者,我忘记了整数和浮点数。
这就是 "circle" 没有关闭的原因。
您的代码在 Python 3 中运行良好,但由于除法工作方式的不同,在 Python 2 中没有关闭多边形。解决方法是简单地使用 360.0 而不是 360,然后它在两者中都可以正常工作:
from turtle import Turtle, Screen
def polygon(t, l, n):
angle = 360.0 / n
for _ in range(n):
t.fd(l)
t.lt(angle)
bob = Turtle()
polygon(bob, 10, 140)
screen = Screen()
screen.exitonclick()
Python turtle 自己的 circle()
方法实际上绘制多边形的默认假设是 60 条边足以在屏幕上看起来像一个圆。除非圆非常小(然后它使用更少的边)或者用户通过 steps
参数坚持使用更多(或更少)的边。
尝试输入 360.0 而不是 360,因为 Python 的初始值是整数。
我们想把它转换成小数,所以我们把 .0 放在 360 之后。
所以我正在读一本书来学习 python,我读到了关于模块 turtle 的部分内容。 所以在解释完之后,它会给你一些练习。 其中之一是定义一个创建正多边形的函数。 我让这个工作。
import turtle
bob = turtle.Turtle()
def polygon(t, l, n):
angle = 360/n
for i in range(n):
t.fd(l)
t.lt(angle)
polygon(bob, 40, 5)
例如这画了一个正五边形。
下一个练习要求你画一个 "circle" 改变多边形的边数。 问题是有时它不起作用并且 polygon/circle 不关闭。 我试图通过多次更改长度和边数或仅更改两者之一来找到解决方案,但我没有成功。 例如,lenght = 10 和 n°sides = 140 不起作用,而 lenght = 20 和 n°sides = 120 起作用。
有人可以解释一下吗?
找到解决方案。 作为初学者,我忘记了整数和浮点数。 这就是 "circle" 没有关闭的原因。
您的代码在 Python 3 中运行良好,但由于除法工作方式的不同,在 Python 2 中没有关闭多边形。解决方法是简单地使用 360.0 而不是 360,然后它在两者中都可以正常工作:
from turtle import Turtle, Screen
def polygon(t, l, n):
angle = 360.0 / n
for _ in range(n):
t.fd(l)
t.lt(angle)
bob = Turtle()
polygon(bob, 10, 140)
screen = Screen()
screen.exitonclick()
Python turtle 自己的 circle()
方法实际上绘制多边形的默认假设是 60 条边足以在屏幕上看起来像一个圆。除非圆非常小(然后它使用更少的边)或者用户通过 steps
参数坚持使用更多(或更少)的边。
尝试输入 360.0 而不是 360,因为 Python 的初始值是整数。
我们想把它转换成小数,所以我们把 .0 放在 360 之后。