#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库的使用的更多相关文章

  1. Python绘图之Turtle库详解(1)

    Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行 ...

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

    turtle:海龟(海龟库) Turtle库是Python语言中一个很流行的绘制图像的函数库 使用之前需要导入库:import turtle • turtle.setup(width,height,s ...

  3. Python绘图工具Plotly的简单使用

    1.Plotly被称为史上最好的绘图工具之一,为了更好的展示金融数据的复杂性. Plotly的官方网站为:https://plot.ly/ python量化的关键是金融数据可视化,无论是传统的K线图, ...

  4. Python学习之turtle库和蟒蛇绘制程序

    Python的函数库 Python语言与C语言Java类似,可以大量使用外部函数库包含在安装包中的函数库:. 比如math, random, turtle等其他函数库,其他函数库用户根据代码需求自行安 ...

  5. python绘图之turtle库函数的用法

    Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行 ...

  6. Python画图库Turtle库详解篇

    Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行 ...

  7. [Python学习笔记] turtle库的基本使用

    turtle库常用函数 引入turtle模块 import turtle turtle的绘图窗体 #setup()设置窗口大小及位置#setup()可省略turtle.setup(width,heig ...

  8. python中的turtle库绘制图形

    1. 前奏: 在用turtle绘制图形时,需要安装对应python的解释器以及IDE,我安装的是pycharm,在安装完pycharm后,在pycharm安装相应库的模块,绘图可以引入turtle模块 ...

  9. python绘图工具matplotlib在linux下安装和使用

    工具介绍:matplotlib 是Python编程语言的一个绘图库及其数值数学扩展 NumPy.它为利用通用的图形用户界面工具包, 如Tkinter, wxPython, Qt或GTK+向应用程序嵌入 ...

随机推荐

  1. TKE 用户故事 - 作业帮 PB 级低成本日志检索服务

    作者 吕亚霖,2019年加入作业帮,作业帮架构研发负责人,在作业帮期间主导了云原生架构演进.推动实施容器化改造.服务治理.GO微服务框架.DevOps的落地实践. 莫仁鹏,2020年加入作业帮,作业帮 ...

  2. CNN、RNN

    卷积神经网络有三个结构上的特性:局部连接,权重共享以及空间或时间上的次采样.这些特性使得卷积神经网络具有一定程度上的平移.缩放和扭曲不变性. CNN由可学习权重和偏置的神经元组成.每个神经元接收多个输 ...

  3. 「Codeforces 724F」Uniformly Branched Trees

    题目大意 如果两棵树可以通过重标号后变为完全相同,那么它们就是同构的. 将中间节点定义为度数大于 \(1\) 的节点.计算由 \(n\) 个节点,其中所有的中间节点度数都为 \(d\) 的互不同构的树 ...

  4. Chapter 12 IP Weighting and Marginal Structural Model

    目录 12.1 The causal question 12.2 Estimating IP weights via modeling 12.3 Stabilized IP weights 12.4 ...

  5. Boosting Adversarial Training with Hypersphere Embedding

    目录 概 主要内容 代码 Pang T., Yang X., Dong Y., Xu K., Su H., Zhu J. Boosting Adversarial Training with Hype ...

  6. TYPEC转HDMI+PD+USB3.0拓展坞三合一优化方案|CS5266 dmeoboard原理图

    CS5266 Capstone 是Type-C转HDMI带PD3.0快充的音视频转换芯片. CS5266接收器端口将信道配置(CC)控制器.电源传输(PD)控制器.Billboard控制器和displ ...

  7. 编写Java程序,实现一个简单的echo程序(网络编程TCP实践练习)

    首先启动服务端,客户端通过TCP的三次握手与服务端建立连接: 然后,客户端发送一段字符串,服务端收到字符串后,原封不动的发回给客户端. ECHO 程序是网络编程通信交互的一个经典案例,称为回应程序,即 ...

  8. Android 悬浮窗

    悬浮窗是一种比较常见的需求.例如把视频通话界面缩小成一个悬浮窗,然后用户可以在其他界面上处理事情. 本文给出一个简单的悬浮窗实现.可缩小activity和还原大小.可悬浮在其他activity上.使用 ...

  9. 《手把手教你》系列技巧篇(五十五)-java+ selenium自动化测试-上传文件-下篇(详细教程)

    1.简介 在实际工作中,我们进行web自动化的时候,文件上传是很常见的操作,例如上传用户头像,上传身份证信息等.所以宏哥打算按上传文件的分类对其进行一下讲解和分享. 2.为什么selenium没有提供 ...

  10. [ vue ] Quasar封装q-dialog组件,在外层实现弹出框的开启和关闭

    场景描述: 见:https://www.cnblogs.com/remly/p/12981582.html 具体实现: <!-- 父组件 --> <template> < ...