营销网站的主题 定位 修改建议,网站生成手机版,成品网站seo,南京华璋建设网站本文导航#xff1a;若您是直接想要代码#xff0c;那么请您移步代码区#xff0c;复制粘贴即可;若您是想了解turtle模块更多知识的话#xff0c;请您移步turtle模块知识区;若您想看完本文呢#xff0c;那我定是感激涕零啦(✪ω✪) 您可以选择选择如下区域或不作选择浏览本…本文导航若您是直接想要代码那么请您移步代码区复制粘贴即可;若您是想了解turtle模块更多知识的话请您移步turtle模块知识区;若您想看完本文呢那我定是感激涕零啦(✪ω✪)
您可以选择选择如下区域或不作选择浏览本文代码区turtle模块知识区:当我们学了turtle后如果不懂turtle模块的话文章末尾会详细介绍的就想尝试为自己心里喜欢的人画一颗一颗爱心想用代码逗自己的小猪猪女孩开心表达自己的爱意那么福利来了动动小手指复制粘贴即可不过有些地方需要适当修改快给自己心爱的女孩看看吧
代码区
端上代码 .----._.__ . .--(#)(##)---/#\
. /###\
: , #####-..__.- _.-\###/ ;_: .. /, JOE ,\// COOL! \\-._______.-___. | .___ (______|______)| __\--__|_
IIOOOOO[/ ★02 ___| _____\______|/-----. /____________________| \◎◎◎◎◎◎◎◎⊙/ ~~~~~~~~~~~~~~~~ 搞错了再来以上图案纯属娱乐勿怪勿怪
import turtle
import time# 实现清屏
def clear_screen():turtle.penup() #画笔抬起turtle.goto(0,0) #定位到00turtle.color(white)turtle.pensize(800) #画笔粗细turtle.pendown() #画笔落下turtle.setheading(0) #设置朝向turtle.fd(300) #前进turtle.bk(600) #后退# 初始化海龟的位置
def go_start(x, y, state):turtle.pendown() if state else turtle.penup()turtle.goto(x, y)#画线state为真时海龟回到原点为假时不回到原来的出发点
def draw_line(length, angle, state):turtle.pensize(1)turtle.pendown()turtle.setheading(angle)turtle.fd(length)turtle.bk(length) if state else turtle.penup()turtle.penup()# 画出发射爱心的小人
def draw_people(x, y):turtle.penup()turtle.goto(x, y)turtle.pendown()turtle.pensize(2)turtle.color(black)turtle.setheading(0)turtle.circle(35, 360)turtle.penup()turtle.pensize(3)turtle.setheading(90)turtle.fd(45)turtle.setheading(180)turtle.fd(20)turtle.setheading(0)turtle.fd(35)turtle.pendown()turtle.circle(4, 360)turtle.penup()turtle.goto(x, y)turtle.pensize(2)turtle.setheading(0)turtle.fd(20)turtle.setheading(90)turtle.fd(20)turtle.setheading(-90)turtle.pendown()turtle.circle(5, 180)turtle.penup()turtle.goto(x, y)turtle.setheading(-90)turtle.pendown()turtle.fd(20)turtle.setheading(0)turtle.fd(35)turtle.setheading(60)turtle.fd(10)turtle.penup()turtle.goto(x, y)turtle.setheading(-90)turtle.pendown()turtle.fd(40)turtle.setheading(0)turtle.fd(35)turtle.setheading(-60)turtle.fd(10)turtle.penup()turtle.goto(x, y)turtle.setheading(-90)turtle.pendown()turtle.fd(60)turtle.setheading(-135)turtle.fd(60)turtle.bk(60)turtle.setheading(-45)turtle.fd(30)turtle.setheading(-135)turtle.fd(35)turtle.penup()# 画爱心
def draw_heart(size):turtle.color(red, pink)turtle.pensize(2)turtle.pendown()turtle.setheading(150)turtle.begin_fill()turtle.fd(size)turtle.circle(size * -3.745, 45)turtle.circle(size * -1.431, 165)turtle.left(120)turtle.circle(size * -1.431, 165)turtle.circle(size * -3.745, 45)turtle.fd(size)turtle.end_fill()# 画箭羽
def draw_feather(size):angle 30 # 箭的倾角feather_num size // 6 # 羽毛的数量feather_length size // 3 # 羽毛的长度feather_gap size // 10 # 羽毛的间隔for i in range(feather_num):draw_line(feather_gap, angle 180, False) # 箭柄不折返draw_line(feather_length, angle 145, True) # 羽翼要折返draw_line(feather_length, angle 145, False)draw_line(feather_num * feather_gap, angle, False)draw_line(feather_length, angle 145 180, False)for i in range(feather_num):draw_line(feather_gap, angle 180, False) # 箭柄不折返draw_line(feather_length, angle - 145, True) # 羽翼要折返draw_line(feather_length, angle - 145, False)draw_line(feather_num * feather_gap, angle, False)draw_line(feather_length, angle - 145 180, False)# 画一箭穿心,最后箭的头没有画出来用海龟来代替
def arrow_heart(x, y, size):go_start(x, y, False)draw_heart(size * 1.15)turtle.setheading(-150)turtle.penup()turtle.fd(size * 2.2)draw_heart(size)turtle.penup()turtle.setheading(150)turtle.fd(size * 2.2)turtle.color(black)draw_feather(size)turtle.pensize(4)turtle.setheading(30)turtle.pendown()turtle.fd(size * 2)turtle.penup()turtle.setheading(29)turtle.fd(size * 5.7)turtle.color(black)turtle.pensize(4)turtle.pendown()turtle.fd(size * 1.2)#显示倒数3,2,1
def draw_0(i):turtle.speed(0)turtle.penup()turtle.hideturtle() # 隐藏箭头显示turtle.goto(-50, -100)turtle.color(red)write turtle.write(i, font(宋体, 200, normal))time.sleep(1)# 显示文字
def draw_1():turtle.penup()turtle.hideturtle() #隐藏箭头显示turtle.goto(-250, 0)turtle.color(red)write turtle.write(臭猪猪接招, font(宋体, 60, normal))time.sleep(2)# 显示发射爱心的小人儿
def draw_2():turtle.speed(3)draw_people(-250, 20)turtle.penup()turtle.goto(-150, -30)draw_heart(14)turtle.penup()turtle.goto(-20, -60)draw_heart(25)turtle.penup()turtle.goto(205, -100)draw_heart(43)turtle.hideturtle()time.sleep(2)def draw_3():turtle.penup()turtle.hideturtle() # 隐藏箭头显示turtle.goto(-220, 50)turtle.color(red)write turtle.write(不离, font(宋体, 60, normal))turtle.penup()turtle.goto(0, -50)write turtle.write(不弃, font(宋体, 60, normal))time.sleep(2)# 显示一箭穿心
def draw_4():turtle.speed(10)turtle.penup()turtle.goto(-210, -200)turtle.color(blue)turtle.pendown()turtle.write(YRB CQZ, font(wisdom, 50, normal))turtle.speed(1)turtle.penup()turtle.color(red)turtle.goto(-31, -200)turtle.write(❤,font(wisdom, 50, normal))arrow_heart(20, -60, 51)turtle.showturtle()number[3,2,1] #储存显示界面倒数数字1,2,3if __name__ __main__:turtle.setup(900, 500) #调画布的尺寸for i in number:draw_0(i)clear_screen()draw_1()clear_screen()draw_2()clear_screen()draw_3()clear_screen()draw_4()turtle.done()部分效果展示 turtle模块知识区: 以上就是本文的核心了你有没有被惊艳到呢略微有点夸张ಠᴗಠ好了在本文的最后还是介绍一下所用到的模块吧
首先呢介绍一下turtle模块吧 turtle模块也称海龟模块。之所以叫海龟模块呢是因为运用此模块画图时就感觉像一只小海龟在沙滩上爬呀爬然后留下了痕迹可以闭上眼想象一下哈哈哈 那么关于turtle模块有哪些知识点呢 如果想实现乌龟在海滩爬行那么除了乌龟还需要什么呢没错就是海滩了。因为常常把画笔箭头比作乌龟所以画布canvas就相当于海滩了。不仅如此我们还可以自定义画布的大小和初始位置 如何设置画布大小
turtle.screensize(canvwidthNone, canvheightNone, bgNone)参数 canvwidth画布的宽度单位像素 canvheight画布的高度单位像素 bg背景颜色 若不设置值默认参数为400,300None 用Pen创建的就是默认大小 如何设置画布位置
turtle.setup(width0.5, height0.75, startxNone, startyNone)参数 widthheight输入宽和高为整数时, 表示像素; 为小数时, 表示占据电脑屏幕的比例 (startxstarty)这一坐标表示矩形窗口左上角顶点的位置。如果为空则窗口位于屏幕中心 介绍完画布呢就该介绍画笔了吧然而操纵海龟绘图有着许多的命令,这些命令可以划分为两种:一种是运动命令一种是画笔控制命令 所谓控制命令就是控制画笔向什么方向移动向什么方向转动抬起画笔还是放下画笔等而运动命令呢就是形如画笔向前移动多少后退多少转多少角度等如下
turtle.pendown() 移动时绘制图形,缺省时也为绘制
turtle.penup() 移动时不绘制图形,提起笔用于另起一个地方绘制时用
turtle.setheading(degree) 海龟朝向degree代表角度
turtle.pensize(width) 画笔的宽度
turtle.pencolor(colorstring) 没有参数传入返回当前画笔颜色传入参数设置画笔颜色RGB、字符串
turtle.fillcolor(colorstring) 绘制图形的填充颜色
turtle.color(color1, color2) 同时设置pencolorcolor1,fillcolorcolor2
turtle.filling() 返回当前是否在填充状态
turtle.begin_fill() 准备开始填充图形
turtle.end_fill() 填充完成
turtle.hideturtle() 隐藏箭头显示
turtle.showturtle() 与hideturtle()函数对应
turtle.reset() 恢复所有设置
turtle.forward(distance) 向当前画笔方向移动distance像素长
turtle.backward(distance) 向当前画笔相反方向移动distance像素长度
turtle.right(degree) 向右转动多少度
turtle.left(degree) 向左转动多少度
turtle.goto(x,y) 将画笔移动到坐标为(x,y)的位置
turtle.stamp() 绘制当前图形
turtle.speed(speed) 设置画笔的速度,speed属于[0, 10]区间的整数数字越大速度越快
turtle.circle() 画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆
turtle.clear() 全局清空turtle窗口但是turtle的位置和状态不会改变
turtle.reset() 全局清空窗口重置turtle状态为起始状态
turtle.undo() 全局撤销上一个turtle动作
turtle.isvisible() 全局返回当前turtle是否可见
stamp() 全局复制当前图形 结合上述代码与这些函数方法应该可以学会turtle模块了吧差不多文章到这里就结束了最后呢希望大家 ,;,,;,;;( 马__ ,;; \ ┇/ \~~~ \ /\.) 到 ,;( ) / |. ┇
,; \ /-.,,( ) \ 成) / ) / )| ┇ || || \) 功(_\ (_\✿✿ヽ(°▽°)ノ✿撒花~