turtle海龟画图print
说明:turtle是Python内置的一个非常有趣的模块,特别适合对计算机程序设计进行初体验的小伙伴,它最早是Logo语言的一部分,Logo语言是Wally Feurzig和Seymour Papert在1966发明的编程语言。
!turtle用户手册
绘制红色正方形
turtle.pensize(6) # 设置画笔大小为6个单位。这个值越大,绘制的线条越粗
turtle.pencolor('red') # 设置画笔的颜色为红色turtle.forward(100) # 让乌龟向前移动 100 个单位,并绘制一条线
turtle.right(90) # 让乌龟向右旋转 90 度
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(100)turtle.mainloop() # 进入主事件循环,保持窗口打开,直到用户关闭它。
默认从左上角开始,顺时针画正方形(对应代码中的有旋转90度)
默认情况下,turtle 的起始位置是屏幕的中心(坐标 (0, 0)),并且初始朝向是向右(0 度)。
import turtle
def draw_rectangle(x, y, width, height):"""绘制矩形:从左下角开始画。参数:x:矩形左下角的x坐标y:矩形左下角的y坐标width:矩形的宽度height:矩形的高度"""turtle.goto(x, y) # 将乌龟的当前位置移动到指定的坐标 (x, y)。这将是矩形的左下角turtle.pencolor('red')turtle.fillcolor('red') # 设置填充颜色为红色turtle.begin_fill() # 开始填充形状for i in range(2):turtle.forward(width)turtle.left(90)turtle.forward(height)turtle.left(90)turtle.end_fill() # 结束填充,填充矩形内部的颜色。
默认向右,画width,左旋转90度,画height,再左旋转90度。
遍历两次,矩形画两次宽高。再画之前进行矩形填充,画结束后结束填充颜色
从左下角开始画矩形,最后填充。
画五角星
1.先看下turtle.circle函数用法:!http://study.yali.edu.cn/pythonhelp/library/turtle.html#turtle.circle
turtle.circle(radius, extent=None, steps=None)
参数
radius – 一个数值: 指定半径的圆
extent – 一个数值 (或 None):extent 为一个夹角,用来决定绘制圆的一部分。如未指定 extent*则绘制整个圆。如果 *extent 不是完整圆周,则以当前画笔位置为一个端点绘制圆弧。如果 radius 为正值则朝逆时针方向绘制圆弧,否则朝顺时针方向。最终海龟的朝向会依据 extent 的值而改变。
steps – 一个整型数 (或 None): 圆实际是以其内切正多边形来近似表示的,其边的数量由 steps 指定。如果未指定边数则会自动确定。此方法也可用来绘制正多边形。
turtle.circle(50)
turtle.mainloop()
这里画的是一个半径50的圆,默认向右开始画,也就是逆时针画圆
turtle.circle(-50,72)
turtle.mainloop()
这里第一个参数radius 为-50,这里的负,就是指定顺时针画;第二个参数extent 是72,也就是画72度的弧。
# 画正六边形
turtle.circle(-50,360,6)
turtle.mainloop()
画正六边形
这里第一个参数radius 为-50,这里的负,就是指定顺时针画;第二个参数extent 是360,也就是画360度的弧;第三个参数是steps 是6,很明显,图中有6个线,大概就是分6部,画直线。
2.turtle.color()
返回或设置填充颜色
fillcolor()
返回以颜色描述字符串或元组 (见示例) 表示的当前填充颜色。可用作其他 color/pencolor/fillcolor 调用的输入。
fillcolor(colorstring)
设置填充颜色为 colorstring 指定的 Tk 颜色描述字符串,例如 “red”、“yellow” 或 “#33cc8c”。
fillcolor((r, g, b))
设置填充颜色为以 r, g, b 元组表示的 RGB 颜色。r, g, b 的取值范围应为 0…colormode,colormode 的值为 1.0 或 255 (参见 colormode())。
fillcolor(r, g, b)
设置填充颜色为 r, g, b 表示的 RGB 颜色。r, g, b 的取值范围应为 0…colormode。
如果 turtleshape 为多边形,该多边形内部也以新设置的填充颜色填充。
color(colorstring), color((r,g,b)), color(r,g,b)
输入格式与 pencolor() 相同,同时设置填充颜色和画笔颜色为指定的值。
color(colorstring1, colorstring2), color((r1,g1,b1), (r2,g2,b2))
相当于 pencolor(colorstring1) 加 fillcolor(colorstring2),使用其他输入格式的方法也与之类似。
3.首先要了解五角星,
代码是从(0,0)开始,顺时针画,使用turtle.circle(-radius, 72)
画72度的圆弧,用来标记五角星的五个点,标记到最后海龟定位在pos5,然后隔一个到pos3,再到pos1,再到pos4,再到po2,再到pos5。画的过程中进行填充,这就是我们小时候画五角星的那种方法,就是顺序有点不一样,看看这个画的动画方便理解。
def draw_star(x, y, radius):