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

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. css3 二维码 添加 扫描特效

    <section data-role="paragraph" class="_135editor" style="border: 0px non ...

  2. bind 笔记

    BIND 的安装和配置: dns 服务,程序包名为bind ,程序名称为named 只需要安装 bind ,bind-libs ,bind-utils 生产环境全部安装 bind 服务脚本 :/etc ...

  3. springboot跑定时任务

    使用@Scheduled注解实现 1.在启动类上加上@EnableScheduling 开启定时任务 2.新建一个任务类,在方法上添加@Scheduled注解 @Componentpublic cla ...

  4. SSM-网站后台管理系统制作(4)---Ajax前后端交互

    前提:Ajax本身就为前后端交互服务的,实现功能:用户输入信息,实时判断用户的情况,这也是现在登录界面普遍流行的做法.前端js通过注释识别Controller层,该层查询返回,和之前Google验证码 ...

  5. JS设计模式(7)组合模式

    什么是组合模式? 定义:1.将对象组合成树形结构以表示"部分-整体"的层次结构.2.组合模式使得用户对单个对象和组合对象的使用具有一致性.3.无须关心对象有多少层,调用时只需在根部 ...

  6. centos7 install nginx+fastdfs

    说明:centos7单机部署 nginx fastdfs ## 创建一下目录作为存储数据图片的路径 可以自己定义 mkdir -pv /data/application/{storage,tracke ...

  7. mysql ERROR 1045 和2058时(28000): 错误解决办法

    mysql ERROR 1045 (28000): 错误解决办法 听语音 | 浏览:54286 | 更新:2018-02-23 14:34 | 标签:mysql 1 2 3 4 5 6 7 分步阅读 ...

  8. 【C++】C++未定义行为

    未定义行为:语言标准没有规定,编译器自行决定的行为,在不同的编译器上有时会有不同的结果. 1: int i=0; i=i++; 我们知道i++会返回i之后再自增,那么程序运行完i为多少? 解释一:i= ...

  9. vi删除当前行的字符

    x 删除当前光标下的字符dw 删除光标之后的单词剩余部分.d$ 删除光标之后的该行剩余部分.dd 删除当前行

  10. sublime设置html在浏览器打开

    1.快捷键 Ctrl+Shift+P输入:pcip选择第一个 2.输入:View In Browser安装此插件 3.菜单栏Preferences->Key Bindings  输入:[{ &q ...