Python绘图工具turtle库的使用

Posted yy-yang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python绘图工具turtle库的使用相关的知识,希望对你有一定的参考价值。

#PythonDraw.py
import turtle   #引入了一个绘图库(海归库)
turtle.setup(650,350,200,200)       #设置一个窗体
turtle.penup()      #将画笔抬起
turtle.fd(-250)     #让海龟倒退行进250个像素点,由于海龟处于飞起状态画布不留效果
turtle.pendown()    #将画笔放下
turtle.pensize(25)      #设置画笔的宽度为25个像素
turtle.pencolor("purple")       #画笔颜色设为purple
turtle.seth(-40)        #将海龟方向改为绝对的-40度方向
for i in range(4):      #循环4次绘制蟒蛇半径为40个像素角度分别为80度和-80度
    turtle.circle(40,80)
    turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
turtle.done()       #程序运行后不会自动退出需要手动关闭窗口,去掉这条语句程序运行结束会自动退出

 

一、turtle基本情况

  turtle(海归)库是turtle绘图体系的Python实现

  -turtle绘图体系:1969年诞生,主要用于程序设计入门

  -Python语言的标准库之一

    Python计算生态 = 标准库 + 第三方库

    标准库:随解释器直接安装到操作系统中的功能模块

    第三方库:需要经过安装才能使用的功能模块

  -入门级的图形绘制函数库

二、turtle绘图窗体布局

  turtle.setup(width,heigth,startx,starty)

    startx、starty不给值默认在正中心

  -setup()设置窗体大小及位置

  -4个参数中后两个可选

  -setup()不是必须的

三、turtle空间坐标体系

  1、绝对坐标

    海龟刚开始位于画布的正中间坐标为(0,0)

    技术图片

    turtle.goto(x,y)  #海龟从当前位置位移到(x,y)

  2、海龟坐标体系

    从海龟自身运动来讲它看到的是什么样的,对于海龟来讲它的当前行进方向无论是朝向哪个角度都叫前进方向,反方向是后退方向。

    turtle.fd(d)  #向海龟的正前方向运行

    turtle.bk(d)  #向海龟的反方向运行

      参数d为移动像素数

    turtle.circle(r,angle)  #以海龟当前位置左侧的某一个点为圆心进行曲线运行

四、turtle的角度坐标体系

  1、绝对角度

  turtle.seth(angle)

    -seth()改变海龟进行方向

    -seth()只改变方向但不行进不绘制任何信息

    -angle 为绝对度数

技术图片

  2、海龟角度

    turtle.left(angle)  #向左改变angle角度

    turtle.right(angle)  #向右改变angle角度

五、RGB色彩体系

  由三种颜色构成的万物色

  -RGB指红蓝绿三个通道的颜色组合

  -覆盖视力所能感知的颜色组合

  -RGB每色取值范围0-255或0-1小数

  常见RGB色彩

技术图片

技术图片

  1、默认采用小数值,可切换为整数值

    turtle.colormode(mode)

    -1.0:RGB小数值模式

    -255:RGB整数值模式

六、库引用

  扩充Python程序功能的方式

  1、-使用import保留字完成,采用<a>.<b>()编码风格

    import <库名>

    <库名>.<函数名>(<函数参数>)

   2、-使用from和import保留字共同完成

    from <库名>import<函数名>

    from <库名> import*   #使用这两种方式在调用函数时就不需要加库名了,直接用函数名加参数调用。

    <函数名>(<函数参数  >)

  使用第一种方法不会出现函数重名的问题,第二种方法可能会出现函数名与程序员自定义的函数重名的问题。

  3、-使用import和as保留字共同完成(这种方法代码量较少也防止了函数重名的情况)

    import<库名>as<库别名>

    <库别名>.<函数名>(<函数参数>)

    -给调用的外部库关联一个更短、更适合自己的名字对编写程序来讲会带来很多的便利。

七、turtle画笔控制函数

  画笔操作后一直有效,一般成对出现

  -turtle.penup()    别名  turtle.pu()  #抬起画笔,不在画布上形成图案

  -turtle.pendown()   别名  turtle.pd()  #放下画笔,在画布上形成图案

  -turtle.pensize(width)  别名  tutle.width(width)  #画笔宽度 

  -turtle.pencolor(color)   #画笔颜色  color为颜色字符串或r,g,b值

    -颜色字符串:  turtle.pencolor("purple")  #函数参数为字符串类型且为小写

    -RGB的小数值:  turtle.pencolor(0.63,0.13,0.94)

    -RGB的元组值: turtle.pencolor((0.63,0.16,0.94))

八、turtle运动控制函数

  控制海龟行进方向:走直线或者走曲线

  -turtle.forward(d)      别名   turtle.fd(d)

    向前行进,海龟走直线

  -d:行进距离,可以为负数

  -turtle.circle(r,extent=None)

    根据半径r绘制extend角度的弧形

  -r:半径,默认圆心在海龟左侧r距离的位置

  -extend:绘制角度,默认是360度整圆

九、turtle方向控制函数

  控制海龟面对方向:绝对角度和海龟角度  

  1、绝对角度

    -turtlr.sethending(angle)  别名  turtle.seth(angle)

      改变行进方向,海龟前进的角度

    -angle:将海龟当前方向改变为某一个绝对角度 

  2、海龟角度

    -turtle.left(angle)  #海龟向左转

    -turtle.right(angle)  #海龟向右转

    -angle:在海龟当前方向上向左或者向右旋转的角度

  注意:方向控制函数只改变海龟行进方向并不在画布上留下痕迹,如果需要海龟行动需要调用运动控制函数。

十、循环语句与range()函数

  循环语句指按一定次数循环执行的一组语句

  常用的方式

    for <变量> in range(<参数>)    #range的参数就是循环的次数

      <被循环执行的语句>

  -<变量>表示每次循环的计数,0到<次数>-1

    for i in range(5)

      print("Hello:",i)     #print输出语句加,可以输出空格

  ‘‘‘输出

    Hello: 0

    Hello: 1

    Hello: 2

    Hello: 3

    Hello: 4  ‘‘‘

  range( ) 函数

  产生循环计数序列的函数

  -range(N)

  产生0到N-1的整数序列,共N个

  -range (M,N)

  产生从M到N-1的整数序列,共N-M个

以上是关于Python绘图工具turtle库的使用的主要内容,如果未能解决你的问题,请参考以下文章

Python-turtle库知识小结(python绘图工具)

海龟绘图(Turtle Graphics)

turtle的简单绘图

python turtle作图问题

Python笔记_第一篇_童子功_8.画图工具(小海龟turtle)

[Python] turtle库的基本使用