如何在python中成为一个圆圈?

这是Thinkpython 2e一书中的代码.

 import turtle
 import math

 bob = turtle.Turtle()

 def polygon(t, n, length):
     angle = 360 / n
     for i in range(n):
         t.fd(length)
         t.lt(angle)    

 def circle(t, r):
     circumference = 2 * math.pi * r
     n = 50
     length = circumference / n
     polygon(t, n, length)

 circle(bob,50)
 turtle.mainloop()

我不明白如何成为一个圆圈,我认为它将是一个50边的多边形,我是对的吗?

解决方法:

圆圈具有无限多个点,屏幕具有有限多个像素.你是不对的,你不能在屏幕上绘制真正的圆圈.这并不是说绘制多边形是在屏幕上近似圆的唯一方法.正如@Qwerty在评论中正确指出的那样,你也可以使用trig函数.

然而,用多边形逼近圆是一种古老的方法,并且是pi近似的经典方式.此外 – 对于海龟来说这是一个有趣的运动.

上一篇:[转]Android 延迟执行


下一篇:平滑连接圆心