Turtle库常用函数


导入 turtle 语句 import turtle

设置画布 turtle.screensize(canvwidth=None,canvheight=None,bg=None)
默认大小为 400 x 300
turtle.screensize()
设置画布为宽 500,高 300 的 灰色为画布
turtle.screensize(canvwidth=500,canvheight=300,bg='gray')

turtle.setup(width=0.5,height=0.75,startx=None,starty=None) width 宽 height 高 当width 和 height 是整数时,表示具体的像素 当width 和 height 是小数时,表示占据电脑屏幕的比例 startx 距离屏幕左面边框的距离 starty 距离屏幕上方边框的距离 当两个参数,值均为空 None 时,则窗口位于屏幕中心。
turtle.setup(width=0.5,height=0.75,startx=None,starty=None)

turtle.setup(width=0.5,height=0.75,startx=100,starty=100)

turtle.setup(width=800,height=600,startx=None,starty=None)

turtle 画笔的基本属性 设置画笔的宽度 turtle.pensize( ) 可以传递整数参数 turtle.pensize(5)
设置画笔的颜色 (蓝色) turtle.pencolor('blue') 也可以通过RGB三元组进行设置 turtle.pencolor('#f6521f')
设置画笔的速度 turtle.speed(speed = 0 - 10 之间的整数) turtle.speed(speed = 2)
画笔运动命令

向当前画笔方向移动distance像素长度

turtle.forward(distance
= 数字) 数字可以是正数或者是负数,可以是小数类型 turtle.forward(distance = 200)
当前代码

运行结果

向当前画笔相反方向移动 distance 像素长度 turtle.backward(distance = 数字) turtle.backward(distance = 300)

顺时针转动 turtle.right(角度) turtle.right(45)
逆时针转动 turtle.left(角度) turtle.left(90)
落笔

turtle.pendown( )
抬笔,此时不进行绘制

turtle.penup( )
移动到坐标 x , y 的位置 turtle.goto(x,y) turtle.goto(x = 50,y = 80)
画圆 turtle.circle(半径) 当半径为正数时,表示逆时针画圆圈 turtle.circle(50) 当半径为负数时,表示顺时针画圆圈 turtle.circle(-50)

import turtle turtle.setup(width=800,height=600,startx=None,starty=None) turtle.pensize(5) turtle.pencolor('blue') # turtle.pencolor('#f6521f')
turtle.speed(speed = 8) turtle.pendown() turtle.forward(distance = 100) turtle.backward(distance = 150) turtle.right(45) turtle.forward(distance = 100) turtle.left(90) turtle.forward(distance = 100) turtle.penup() turtle.goto(x = 50,y = 40) turtle.pendown() turtle.circle(50) turtle.penup() turtle.goto(x = 50,y = -180) turtle.pendown() turtle.circle(50) turtle.mainloop()


移动到对应的 x 轴的位置 turtle.setx(x轴位置) turtle.setx(250)
移动到对应的 y 轴位置 turtle.sety(y轴位置) turtle.sety(250)
设置当前朝向的角度 turtle.setheading(角度) turtle.setheading(45)
设置当前画笔位置为原点,并将画笔方向向右。

turtle.home( )
绘制一个指定直径的圆点 turtle.dot(20)
import turtle turtle.setup(width=800,height=600,startx=None,starty=None) turtle.pensize(5) turtle.pencolor('blue') # turtle.pencolor('#f6521f')
turtle.speed(speed = 8) turtle.pendown() turtle.forward(distance = 50) turtle.setx(100) turtle.sety(150) turtle.setheading(45) # turtle.home()
turtle.dot(20) turtle.forward(distance = 50) turtle.mainloop()

 

 

返回当前是否处于填充状态

turtle.filling( )
开始填充图形

turtle.begin_fill( )
图形的填充颜色 turtle.fillcolor('颜色') turtle.fillcolor('blue')
同时设置 画笔颜色 与 填充颜色 turtle.color('blue','black')
import turtle turtle.setup(width=800,height=600,startx=None,starty=None) # turtle.color('black','red')
 turtle.begin_fill() # turtle.fillcolor('blue')
turtle.color('blue','black') print(turtle.filling()) turtle.pensize(5) turtle.pencolor('blue') # turtle.pencolor('#f6521f')
turtle.speed(speed = 8) turtle.pendown() turtle.forward(distance = 50) turtle.setx(100) turtle.sety(150) turtle.setheading(240) # turtle.home() # turtle.dot(20)
turtle.forward(distance = 180) # turtle.mainloop()
 turtle.end_fill() turtle.mainloop()

 

 

隐藏画笔

turtle.hideturtle( )
显示画笔

turtle.showturtle( )

全局控制命令

清空 turtle 窗口

turtle.clear( )
清空 turtle 窗口,画笔回到起始位置

turtle.reset( )
撤销上一个 turtle 动作

turtle.undo( )
返回当前画笔是否显示

turtle.isvisible()
重复执行一次上一个 turtle 操作

turtle.stamp( )
文本字体 turtle.write('文本内容',font = ("宋体",25))

启动事件循环

turtle.mainloop( )

注:放在最后一句

五角星 代码
import turtle turtle.pensize(5) turtle.color("black","blue") turtle.begin_fill() for i in range(5): turtle.forward(200) turtle.right(144) turtle.end_fill() turtle.penup() turtle.goto(-180, -150) turtle.color("black") turtle.write("Hany驿站-Turtle五角星", font=('Consolas', 20)) turtle.mainloop()

 

 

 

 

五环 代码
import turtle def go(x,y): turtle.penup() turtle.goto(x,y) turtle.pendown() def pen(): turtle.screensize(800, 600) turtle.pensize(10) turtle.speed(10) def name(): turtle.penup() turtle.home() turtle.goto(-95,-180) turtle.pendown() turtle.write('Hany驿站-五环',font = ('Consolas',15)) def main(): turtle.setup(width=0.75, height=0.75, startx=None, starty=None) pen() pencolors = ['blue','yellow','black','green','red'] x = -300 y = 0 for i in range(5) : if i == 3 : x = -180 y = -120
        if i < 3 : go(x + i * 250,y) turtle.pencolor(pencolors[i]) turtle.circle(110) else : go(x + ( i - 3 ) * 250, y) turtle.pencolor(pencolors[i]) turtle.circle(110) name() turtle.hideturtle() turtle.mainloop() if __name__ ==  '__main__': main()

 


2021-07-17

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM