首先先放上蟒蛇的绘制程序

import turtle#引入外部库#def保留字用于 定义函数

def drawSnake(rad,angle,len,neckrad):
for i in range(len):
turtle.circle(rad,angle)
#画圆,rad圆形轨迹半径的位置
#angle表示小乌龟沿着圆形爬行的弧度
turtle.circle(-rad,angle)
turtle.pencolor("red")
turtle.pencolor("blue")
turtle.circle(rad,angle/2)
turtle.fd(rad)#乌龟向前直线爬行,参数表示爬行的距离
turtle.circle(neckrad+1,180)
turtle.fd(rad*2/3) def main():
turtle.setup(1300,800,0,0)
#启动了一个图形窗口(宽度,高度,左上角在屏幕中的位置)
pythonsize=30
turtle.pensize(pythonsize)
#小乌龟运行轨迹的宽度
turtle.pencolor("blue")
#小乌龟运行轨迹的颜色
turtle.seth(-40)
#启动时候运行的方向
drawSnake(40,80,5,pythonsize/2)
#启动绘制蟒蛇的功能 main()#去执行main()函数 Python语法元素
import turtle
import是一个关键字,用来引入一些外部库,
这里的含义是引入一个名字交turtle的函数库
使用turtle库,同学们头脑里需要有这样一个概念: 
想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,
(0,0)位置开始 
它根据一组函数指令的控制,在这个平面坐标系中移动,从
而在它爬行的路径上绘制了图形
def定义函数
 def用于定义函数,这段程序中,共出现两次def关键词,
包含两个函数drawSnake和main。 
函数是一组代码的集合,用于表达一个功能,或者说,函
数表示一组代码的归属,函数名称是这段代码的名字。 
def所定义的函数在程序中未经调用不能直接执行,需要
通过函数名调用才能够执行。
程序运行
 可以看到,两个def语句定义的函数所包含语句与def行
存在缩进关系,def后连续的缩进语句都是这个函数的一部
分。
 由于def定义的函数在程序中未经调用不会被执行,整个
程序第一条执行的语句是main(),它表示执行名字为main()
的函数。
从而,该程序跳转到main()函数定义的一组语句中执行,
即开始执行turtle.setup()语句
同样的,main()函数的最后一条语句调用了drawSnake()
函数,当执行到这条语句时,程序跳转到drawSnake()函
数中运行。
程序
 程序运行main()函数中语句,遇到setup函数
Turtle中的turtle.setup()函数用于启动一个图形窗口,
它有四个参数
turtle.setup(width,height,startx,starty)
分别是:启动窗口的宽度和高度
表示窗口启动时,窗口左上角在屏幕中的坐标位置。
我们所使用的显示屏幕也是一个坐标系,该坐标系以
左上角为原点,向左和向下分别是x轴和y轴。
蟒蛇程序代码启动一个1300像素宽、800像素高的窗
口,该窗口的左上角是屏幕的左上角。
Turtle中的turtle.pensize()函数表示小乌龟运动轨迹
的宽度。
它包含一个输入参数,这里我们把它设为30像素,用
pythonsize变量表示。
 Turtle中的turtle.pencolor()函数表示小乌龟运动轨迹
的颜色。
它包含一个输入参数,这里我们把它设为蓝色,blue,
其他颜色单词也可以使用。Turtle采用RGB方式来定义
颜色,如果希望获得和图片中颜色一致的小蛇,请输入
turtle.pencolor(“#3B9909”)
Turtle中的turtle.seth(angle)函数表示小乌龟启动时
运动的方向。它包含一个输入参数,是角度值。
其中,0表示向东,90度向北,180度向西,270度向
南;负值表示相反方向。
程序中,我们让小乌龟向-40度启动爬行,即:向东南
方向40度。
main()函数给出了小乌龟爬行的窗体大小,爬行轨迹
颜色和宽度以及初始爬行的方位。
最后,调用drawSnake函数启动绘制蟒蛇功能。
drawSnake函数有四个参数,根据调用时给出的参数,
分别将40传递给rad、80给angle,5给len,15给
neckrad
turtle.circle()函数功能
 turtle.circle()函数让小乌龟沿着一个圆形爬行
参数rad描述圆形轨迹半径的位置
这个半径在小乌龟运行的左侧rad远位置处,如果
rad为负值,则半径在小乌龟运行的右侧 
参数angle表示小乌龟沿着圆形爬行的弧度值
turtle.fd()函数功能
turtle.fd()函数也可以用turtle.forward()表示乌龟向
前直线爬行移动
表示小乌龟向前直线爬行移动,它有一个参数表示爬
行的距离 下面是通过学习绘制蟒蛇自行完成的绘制等边三角形的程序:
import turtle

#绘制等边三角形
def main():
turtle.setup(1300, 800, 0, 0)
pythonsize=20
turtle.pensize(pythonsize)
turtle.pencolor("red")
turtle.seth(0)
turtle.fd(200)
turtle.pencolor("yellow")
turtle.seth(120)
turtle.fd(200)
turtle.pencolor("blue")
turtle.seth(240)
turtle.fd(200)
main()
 

python学习2:turtle的使用蟒蛇绘制的学习以及自己摸索的等边三角形绘制(跟随mooc学习)的更多相关文章

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

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

  2. python学习1:程序元素和基本使用方法(跟随mooc学习)

    程序元素: 注释,缩进,变量,常量,表达式 输入,输出,分支,循环 示例程序,温度转换程序: #TempConvert.pyval=input("请输入带温度表示符号发温度值(例如:32C) ...

  3. python库之turtle(图形绘制) 开启新的快乐源泉

    相信有不少人学习python 都是听了老前辈的推荐 “学python好,python有趣的代码多” 比如说画一只小狮子 这就是今天想要介绍的绘制图形库-turtle 如果也想这样画一只小狮子,或者其他 ...

  4. python中关于turtle库的学习笔记

    一.基础概念 1.画布:画布就是turtle为我们展开用于绘图区域, 我们可以设置它的大小和初始位置.常用的画布方法有两个:screensize()和setup(). (1)turtle.screen ...

  5. Python画图库Turtle库详解篇

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

  6. Python绘图工具turtle库的使用

    #PythonDraw.py import turtle #引入了一个绘图库(海归库) turtle.setup(650,350,200,200) #设置一个窗体 turtle.penup() #将画 ...

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

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

  8. 画一个心送给心爱的小姐姐,Python绘图库Turtle

    Python绘图库Turtle Turtle介绍 Turtle是Python内嵌的绘制线.圆以及其他形状(包括文本)的图形模块. 一个Turtle实际上是一个对象,在导入Turtle模块时,就创建了对 ...

  9. 吴裕雄--天生自然python编程:turtle模块绘图(1)

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

随机推荐

  1. java之接口文档规范

    一.xxxxxx获取指定任务爬取的所有url的接口 接口名称:xxxxxx获取指定任务爬取的所有url的接口 访问链接: http://IP:PORT/crwalTask/findUrlExcepti ...

  2. springMVC学习之路2-文件上传

    springMVC的上传文件方式一共有两种,下面听我简单介绍一下: 1.1 首先配置springAnnotation-servlet.xml,新增一个multipartResolver处理器,并定义默 ...

  3. Docker Weave 介绍 or 工作原理

    Docker Weave Network Weave Network:属于第三方网络项目. Weave在Docker主机之间实现Overlay网络,使用业界标准VXLAN封装,基于UDP传输,也可以加 ...

  4. Android中的task和stack

    今天在重新理了一遍intent的过程中发现task是一个神奇的东西,而它又和stack有着很深的联系.task顾名思义是一个任务,但是这个任务可不一定只是来自一个app,比如我用微信来发一张图片,那么 ...

  5. EJB到底是什么?

    EJB到底是什么?   1. 我们不禁要问,什么是"服务集群"?什么是"企业级开发"? 既然说了EJB 是为了"服务集群"和"企业 ...

  6. Learning-Python【补充篇】:Python之可变类型与不可变类型

    可变类型 值变了,但是id没有变,证明没有生成新的值而是在改变原值,原值是可变类型 不可变类型 值变了,id也跟着变,证明是重新开辟一块内存空间生成了新的值,而不是在改变原值,原值是不可变类型

  7. windows 添加开始菜单

    C:\Users\用户名(为你设置的电脑名称)\AppData\Roaming\Microsoft\Windows\Start Menu C:\ProgramData\Microsoft\Window ...

  8. Bioconductor软件安装与升级

    1 安装工具Bioc的软件包不能使用直接install.packages函数,它有自己的安装工具,使用下面的代码: source("https://bioconductor.org/bioc ...

  9. jquery 判断元素是否可见

    if($('#progress_bar').is(":visible")){ $('#progress_bar').hide(); }

  10. C/C++.判断文件是否存在(_access)

    1. int _access(char* path,int mode)头文件<io.h>功能:确定文件或文件夹的访问权限.如果指定的存取方式有效,则函数返回0,否则函数返回-1. 参数pa ...