今天,爸爸给我推荐了一个python的库,叫做turtle。它是python自带的一个绘图库,可以绘制出各种各样的图形。
1.0版本
首先,我先用库里的circle()函数画了一个正方形和一个圆画了一个圆。
画出来的图:
代码:
2.0版本
画完以后,我觉得不过瘾,光用库里的函数画两个图形有什么意思,我要用自己代码去画圆。于是写了2.0版本。
原理:
这是我们练习册上的一道题,我是根据它想出来的。
画出来的图:
代码:
3.0版本
我给爸爸看了以后,爸爸提示我:“你可以用勾股定理画圆啊!”我顿时恍然大悟,于是改进出3.0版本。
原理:
可以利用x和r算出y。求法为:
x当a,y当b,r当c。已知x、r,求b(x从0到r循环)。求出坐标以后再画挨个点就行了。参考文章:画圆的程序(来自: 父女一起学Python)
画出来的图:
代码:
import turtle
import time
import math
t = turtle.Turtle()
def printc(r):
y=0
for x in range(r):#画右上的四分之一圆
s=r*r-(x*x)
y=math.sqrt(s)
t.goto(x,y)
t.pendown()
for x in range(r):#右下
x=r-x
s=r*r-(x*x)
y=math.sqrt(s)
y1=0-y
t.goto(x,y1)
t.pendown()
for x in range(r):#左上
s=r*r-(x*x)
y=math.sqrt(s)
x=0-x
t.goto(x,y)
t.pendown()
for x in range(r):#左下
x=r-x
s=r*r-(x*x)
y=math.sqrt(s)
y1=0-y
x=0-x
t.goto(x,y1)
t.pendown()
turtle.write('r=200', font=("Courier", 24, "bold"))#打印半径
printc(200)
领取专属 10元无门槛券
私享最新 技术干货