96SEO 2026-02-20 08:16 0
本次我们将尝试制作一个动态的emoji#xff0c;让你的表情包动起来#xff01;

在上次我们绘制了静态的emoji图。
并且总结了turtle中的常用函数。
turtle模块和函数的用法总结模块的导入方法turtle的角度
要在turtle中实现动画的效果同样可以通过图片快速切换的方式来实现。
那怎么制作动画呢我们通过对比观察两张图片发现唯一的不同点是黑眼珠的位置不同。
而修改眼珠的位置只需要修改绘制时移动的步数就可以了然后不断的动可以看作循环打印即循环调用绘制函数就好啦
我们上次已经绘制好了一侧的眼球详见《Python趣味工具》——自制emoji2
而我们在绘制另一侧眼珠时只需要修改移动步数——也就是将forward(6)改为forward(60)即可。
这里具体的移动大小可以自己预先算出来包括后面的每一步都一样
下面我们修改eyes_black()函数为它设置一个参数x代表移动的步数。
使用pensize()函数设置画笔粗细为15pensize(15)#
使用pencolor()函数设置画笔颜色为blackpencolor(black)#
使用circle()函数绘制一个半径为5圆心角为360度circle(5,360)#
使用forward()函数前进110步forward(110)#
使用circle()函数绘制一个半径为5的圆circle(5,360)#
使用hideturtle()函数隐藏画笔hideturtle()
用input函数邀请用户输入自定义文字内容。
定义一个write_emoji()函数书写文字内容。
具体怎么输出文字我们在《Python趣味工具》——自制emoji1绘制爱心应援牌❤️里已经讲过了大家可以自行参考。
使用fillcolor()函数将填充颜色设置为blackfillcolor(black)#
使用goto()函数移到坐标点为(0,-170)的位置goto(0,-170)#
center字体类别大小和粗细为font(Arial,25,bold)write(content,aligncenter,font(Arial,25,bold))
1.定义函数emoji(x)绘制表情包参数x表示黑眼珠移动距离。
2.函数包含draw_face(),draw_mouth(),eyes_white(),eyes_black(x),write_emoji()共5个部分。
3.调用emoji(x)函数将参数设置为60绘制黑眼珠在右侧的表情包。
使用draw_face()函数绘制脸部draw_face()#
使用draw_mouth()函数绘制嘴巴draw_mouth()#
使用eyes_white()函数绘制白眼珠eyes_white()#
使用eyes_black(x)函数绘制黑眼珠参数x表示移动距离eyes_black(x)#
使用write_emoji()函数书写表情包文字write_emoji()#
根据动画的实现原理我们可以将两张emoji图片反复切换播放实现动图效果也就是
展示emoji1刷新屏幕暂停一段时间这个根据自己的实际情况看着写不停顿效果可能会很鬼畜展示emoji2
使用time.sleep()函数停顿0.5秒time.sleep(0.5)#
使用time.sleep()函数停顿0.5秒time.sleep(0.5)#
1第1-4行代码的作用是设置一个计数器设置表情包的动画次数。
我们将表情包的动画次数设置为10次。
你在本地完成时可以修改次数甚至一直让它动起来。
第13-20行代码的作用是绘制表情包2并刷新画面等待一段时间。
在替换下一张图片前需要刷新画面我们可以使用update()函数来实现。
在图形绘制完毕后再使用update()函数就可以看到当前绘制好的整个图形。
我们知道小海龟走过的地方会留下它的轨迹。
往前移动一点线条就变长一点。
但是如果我们想直接看到绘图结果不想看到这样的更新过程呢
使用tracer(0)函数可以关闭了轨迹即我们看不到小海龟的爬行过程。
上下两个动图分别为没有用tracer函数和使用tracer(0)update()函数的效果
完结撒花我们已经制作出了自己的第一个GIF动图下面附上源代码相信你也是跃跃欲试吧
移动到坐标点为(-120,0)的地方goto(-120,0)#
将画笔颜色设置为黑**lackpencolor(black)#
画圆圆的半径为130圆心角为360度circle(130,360)#
移动到坐标点为(-80,-10)的位置goto(-80,-10)#
绘制一个半径为90圆心角为180的半圆circle(90,180)#
使用forward()函数往前直走60步forward(60)#
使用pensize()函数设置画笔粗细为20pensize(20)#
使用pencolor()函数设置画笔颜色为whitepencolor(white)#
使用circle()函数绘制一个半径为100圆心角为45的弧形circle(100,45)#
使用forward()函数向前走40步forward(40)#
使用circle()函数绘制一个半径为100圆心角为45度的圆弧circle(100,45)#
使用pensize()函数设置画笔粗细为15pensize(15)#
使用pencolor()函数设置画笔颜色为blackpencolor(black)#
使用circle()函数绘制一个半径为5圆心角为360度circle(5,360)#
使用forward()函数前进110步forward(110)#
使用circle()函数绘制一个半径为5的圆圆心角为360度circle(5,360)#
使用hideturtle()函数隐藏画笔hideturtle()#
使用fillcolor()函数将填充颜色设置为blackfillcolor(black)#
使用goto()函数移到坐标点为(0,-170)的位置goto(0,-170)#
center字体类别大小和粗细为font(Arial,25,bold)write(content,align
使用draw_face()函数绘制脸部draw_face()#
使用draw_mouth()函数绘制嘴巴draw_mouth()#
使用eyes_white()函数绘制白眼珠eyes_white()#
使用eyes_black(x)函数绘制黑眼珠参数x表示移动距离eyes_black(x)#
使用write_emoji()函数书写表情包文字write_emoji()#
使用time.sleep()函数设置停顿时间0.5秒time.sleep(0.5)#
使用time.sleep()函数设置停顿时间0.5秒time.sleep(0.5)#
在实际使用中我们发现有的模块需要安装但有的不需要这是怎么回事呢原因在于有的模块是内置的有的是第三方提供的
1.内置模块是你下载了Python编辑器就自带的模块在使用中不需要安装只需要导入就可以
类比一下就是标准模块是你手机买到就安装的App而第三方模块就是你自己去要应用市场下载的App。
导入模块后程序知道我们有了turtle这个库却不知道有哪些函数。
*导入所有函数时相当于把所有函数都装进来了就可以直接使用其中的函数了
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback