用pythonturtle画简单的图案,pythonturtle简易绘图代码

这篇文章主要介绍了用python的turtle画炫酷的图,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。

版权说明:本公号转载文章旨在学习交流,不用于任何商业用途,版权归原作者所有,如有异议,敬请后台联络我们,议定合作或删除,我们将第一时间按版权法规定妥善处理,非常感谢!


又到一年一度的国际儿童节,作为逢节必过的程序猿,怎么可以放过这个学习技能的机会呢?于是,今天我们来学习用python制作童年的回忆,一起做回年轻的那个少年。

一、画出童年的卡通人物

593bbd7398320f886493258657b4b478.png

一、Turtle图形库简介

Turtle库,又称海龟库,是Python语言中一个很流行的绘制图像的函数库python动态爱心代码

大家可以想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。

Turtle库一般python环境会自带,如果没有这个库查询一下安装方法。

二、常用函数

  • 画笔控制函数

  1. penup():抬起画笔;
  2. pendown():落下画笔;
  3. pensize(width):画笔宽度;
  4. pencolor(color):画笔颜色;color为颜色字符串或者rgb值

运动控制函数

  1. forward(d)/fd(d):直行d个像素;
  2. circle(r, extent = None):绘制半径为r,角度为extent的弧形,圆心默认在海龟左侧距离r的位置;

方向控制函数

  1. setheading(angle)/seth(angle):改变前进方向;
  2. left(angle):海龟左转;
  3. right(angle):海龟右转;

三、代码演示

下面用海龟库完成蜡笔小新的绘制,下面是部分源码,完整源码以及其余的卡通图案绘制源码见文末。

import turtle as t

t.pensize(4)
t.speed(10)

# =======头======
def head():
    t.penup()
    t.fillcolor("#FFEE26")
    t.goto(-130, 10)
    t.pendown()
    t.begin_fill()
    t.seth(81)
    t.fd(90)
    t.seth(100)
    t.circle(-500, 3)
    t.circle(-100, 10)
    t.circle(-200, 25)
    t.circle(-110, 20)
    t.circle(-140, 30)
    t.circle(-180, 30)
    t.circle(-200, 20)
    t.circle(-140, 10)
    t.circle(-160, 50)
    t.seth(85)
    t.fd(-148)
    t.seth(-112)
    t.circle(-250, 14)
    t.fd(200)
    t.right(80)
    t.fd(190)
    t.seth(110)
    t.circle(-200, 7)
    t.circle(-130, 30)
    t.end_fill()

绘制过程:

f2128844891faef3ee8f98e3deef4e62.gif

6个卡通图案绘制源码(网页打开直接下载):

https://alltodata.cowtransfer.com/s/2b943c8a803e45

注:文中卡通图案绘制参考了部分教程。

二、制作十款经典的童年游戏

下面再分享一下十个python可以制作的经典游戏,看看有没有你的菜,代码链接放在文末。

对了以下游戏皆是小学六年级的代码水平

如有不适,赶快学习

1、小鸟管道
  • 使用模块:pygame
  • 代码长度:139行
  • 行哥评语:强迫症的克星

54053517a5550b5bf7c7b3fb6155b316.png

2.是男人就下100层
  • 使用模块:pygame
  • 代码长度:185
  • 行哥评语:今天在座的都是男孩888298f3f63dd51e637bcdd5699c09b8.png
3、五子棋
  • 使用模块:pygame
  • 代码长度:250
  • 行哥评语:最快教会女朋友的互动游戏ecd6bd3dbc3556cb82fcdb5d8ea019f9.png
4.连连看
  • 使用模块:pygame
  • 代码长度:351
  • 行哥评语:网络版的连连看可以用python脚本一秒完成b53853064320f30bf068a04c53048437.png
5.雷电
  • 使用模块:pygame
  • 代码长度:490
  • 行哥评语:在物质匮乏的年代,这个行哥真玩过通
  • f3027625de2991824453ae53a01b7bdd.png

6.俄罗斯方块
  • 使用模块:pygame
  • 代码长度:539
  • 行哥评语:被誉为最伟大游戏之一28f7dda3882dedea1dcee8047a55a86e.png
7.魂斗罗
  • 使用模块:pygame
  • 代码长度:698行
  • 行哥评语:3条命通关你信吗
  • 代码来源:https://github.com/Yuu177/Contra_Game46b466d69b3b0d0146e613e62c257497.png
8.我的世界
  • 使用模块:pyglet
  • 代码长度:902
  • 行哥评语:00后的代码游戏4d0cb467454c0ff5bdb53cfcdadb3dfb.png
9.坦克大战
  • 使用模块:pygame
  • 代码长度:1086行
  • 行哥评语:最初版塔防游戏

ad61d25e3af9451a2f655659889933b0.png

10.超级玛丽
  • 使用模块:pygame
  • 代码长度:5241行
  • 行哥评语:经典游戏没有之一
  • 代码来源:https://github.com/TobyfoxpurePython/-python55a9b80d07c0c247545c8622656cb38f.png

以上游戏10个有9个都是使用Pygame模块来制作,也就是说简单的了解一下这些单机游戏的原理,学会Pygame的调用函数,将图片、音乐和逻辑组合在一起,你也可以轻松制作一款游戏。这样各种奇葩外挂也随着修改变量来完成,不用再自己找30条命的魂斗罗游戏卡啦,想回忆玩这款游戏可以在之前行哥分享的一篇网站推荐文章--小霸王网站上玩各种童年经典游戏。

唯一的一款3D游戏是我的世界,使用的是pyglet模块,编写的代码量不到1000行,想学习还是很简单。对了现在网易代理的《我的世界》已经提供了开发者模式,小盆友们已经开始调用命令玩这款游戏了哦,B站是更有各路大神python房子造的飞起,有兴趣的可以了解一下。

福利
  • 游戏体验网址:https://www.yikm.net/
  • 所有游戏源代码:后台回复【六一快乐】即可领取
  • 29
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值