文章目录
Python贪吃蛇绘制
绘图原理
import引用库
from import引用库
import as引用库
比较
画笔控制函数
turtle空间坐标体系
运动控制函数
方向控制函数
循环语句与range()函数
完整分析
Python贪吃蛇绘制
#PythonDraw.py import turtle #程序关键,import保留字,引入一个绘图库,名字叫turtle,意思是海龟 turtle.setup(650,350,200,200) turtle.penup() turtle.fd(-250) turtle.pendown() turtle.pensize(25) turtle.pencolor("red") turtle.seth(-40) for i in range(4): 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绘图体系的Python实现
turtle绘图体系:1969年诞生,主要用于程序设计入门
Python语言的标准库之一
入门级的图形绘制函数库
Python计算生态 = 标准库 + 第三方库
标准库:随解释器直接安装到操作系统中的功能模块。
第三方库:需要经过安装才能使用的功能模块。
库Library、包Package、模块Module,统称模块。
绘图原理
有一只海龟,其实在窗体正中心,在画布上游走 走过的轨迹形成了绘制的图形 海龟由程序控制,可以变换颜色、改变宽度等
turtle的绘图窗体
turtle.setup(width, height,startx, starty)
setup()设置窗体大小及位置
turtle.setup(650,350,0,0)
4个参数中后两个可选
setup()不是必须的
turtle.setup(650,350)
import引用库
在这里插入代码片 import <库名> <库名>.<函数名>(<函数参数>)
from import引用库
在这里插入代码片 from <库名> import <函数名> from <库名> import*<函数名>(<函数参数>)
import as引用库
在这里插入代码片 import <库名> as <库别名> <库别名>.<函数名> (<函数参数>) 给库起一个小明(张三)哈哈,人性化
比较
不会出现函数重名的问题(假如程序很大引入了很多库并定义了很多函数建议使用)
会出现(用户自定义的函数)(程序简单且没有自定义的函数推荐使用)
冗余代码量少,同时防止了库重名的问题(安利)
画笔控制函数
在这里插入代码片 turtle.penup() 别名 turtle.pu() #抬起画笔 turtle.pendown() 别名 turtle.pd() #落下画笔 turtle.pensize(width) 别名 turtle.width(width) #设置画笔宽度 turtle.pencolor(color) color为颜色字符串或r,g,b值 #设置画笔颜色1.“red” 2.rgb 3.rgb元组值
turtle空间坐标体系
turtle.goto(x, y)
比如,简单画一个三角形理解一下
import turtle turtle.goto(100,0) turtle.goto(50,60) turtle.goto(0,0) turtle.done()
nice
运动控制函数
在这里插入代码片 turtle.forward(d) 别名 turtle.fd(d) 走直线 d:行进距离,可以为负数 turtle.circle(r,extent=None) 根据半径r绘制extent角度的弧形 正数圆心在左侧,负数圆心在右侧
方向控制函数
在这里插入代码片 turtle.setheading(angle) 别名 turtle.seth(angle) 改变行进方向 绝对角度 turtle.left(angle) 海龟向左转 turtle.right(angle) 海龟向右转 注意:只改变方向
循环语句与range()函数
在这里插入代码片 for i in range(5): print(i) #输出:0,1,2,3,4 range(n) #产生0~n-1的整数序列,共n个 range(m,n) #产生m到n-1的整数序列,共n-m个
完整分析
#PythonDraw.py import turtle #程序关键,import保留字,引入一个绘图库,名字叫turtle,意思是海龟 turtle.setup(650,350,200,200) #设置窗体大小以及窗体位置长650 宽350 距离屏幕左上角200 200的位置 turtle.penup() #画笔抬起 turtle.fd(-250) #倒退向后行进250个像素 turtle.pendown() #落下 turtle.pensize(25) #画笔宽度25 turtle.pencolor("red") #画笔颜色红色 turtle.seth(-40) #方向改成绝对的-40° for i in range(4): #循环 turtle.circle(40,80) #走曲线,用40像素为半径绘制80弧度 turtle.circle(-40,80) #走曲线,反向用40像素为半径绘制80弧度 turtle.circle(40,80/2) #取一半 turtle.fd(40) #向前行进40度 turtle.circle(16,180) turtle.fd(40 * 2/3) turtle.done() #程序运行之后不会退出