先看一下效果

用python画出火柴人的代码 python用turtle画火柴人_用python画几个东西怎么画

up主是一个计算机专业的学生,平时喜欢自己学习一些东西,写博客。

首先介绍一下我用的Python IDE:我用的是pycharm,超级喜欢这款Python编译软件的风格,这个编辑器还可以自己更改背景图,看看我的pycharm界面

用python画出火柴人的代码 python用turtle画火柴人_计算机专业_02

用python画出火柴人的代码 python用turtle画火柴人_Python_03

是不是很好看嘻嘻。再来一条分割线,下面开始正文,向大家解释一下我是怎样画的滑稽脸。

首先导入我们要用到的turtle库:

import turtle as t(这种导入方法可以让我们在后面使用turtle库的时候不用每次都敲turtle这个单词,直接用t就可以代替turtle。比如当我们使画笔前进100个像素我们就可以这样写t.fd(100)。

然后写了一个移动画笔的函数:

def moveto(x, y):
t.penup()
t.goto(x, y)
t.pendown()

因为在画的时候你需要不断的移动画笔:提起画笔、移动画笔、放下画笔。将其封装成一个函数就可以只写一句话就可以实现移动画笔,使你的代码变得简洁。

然后调出画布并设置画布的大小:t.setup(width=1000,height=700)

设置画笔的大小:t.pensize(3)

设置画笔的颜色:t.color('black','orange')

画一个半径为300像素的圆并填充橙色:

moveto(0,-300)
t.circle(300)
t.speed(16)
t.begin_fill()
t.fillcolor()
t.circle(300)
t.end_fill()

效果如图:

用python画出火柴人的代码 python用turtle画火柴人_用python画几个东西怎么画_04

下面就开始画眼睛啦!先从左眼睛开始:

设置画笔的移动速度为1:t.speed(1)

调用移动画笔的函数使画笔移动到(-200, 50)的位置:moveto(-200, 50)

设置画笔的颜色为深橙色:t.color('darkorange')

设置填充颜色为白色:t.fillcolor("white")

设置画笔的大小为6:t.pensize(6)

将画笔旋转30度(画笔默认在画布中心与x轴正方向一致):t.seth(30)

画一个半径为240像素截取40度的圆周长:t.circle(-240, 40)  ps:画下眼眶

再将画笔旋转40度画一个半径为30像素截取90度的圆周长(ps:画右边的眼眶)然后将画笔旋转158度画一个半径180像素截取70度的圆周长(ps:画上眼眶)再然后将画笔旋转280度画一个半径为30像素截取86度的圆周长(PS:画右眼眶)。至此整个眼眶就画完啦!看一下效果:

用python画出火柴人的代码 python用turtle画火柴人_ci_05

再然后开始画眼珠:

将画笔移动到(-180, 63)的位置:moveto(-180, 63)

设置画笔的颜色为黑色:t.color("black")

设置画笔的大小为1:t.pensize(1)

设置填充颜色为黑色:t.fillcolor("black")

画一个半径为22像素的圆并填充为黑色:

t.begin_fill()
t.fillcolor("black")
t.circle(22)
t.end_fill()

运行代码之后的效果图片:

用python画出火柴人的代码 python用turtle画火柴人_用python画出火柴人的代码_06

然后画右眼睛,过程和画左眼睛的过程一样,只是角度有一些不一样代码如下:

moveto(50, 80)
t.color('darkorange')
t.begin_fill()
t.fillcolor("white")
t.pensize(6)
t.seth(20)
t.circle(-240, 40)
t.seth(40)
t.circle(30,90)
t.seth(150)
t.circle(180,70)
t.seth(280)
t.circle(30,86)
t.end_fill()
moveto(70, 86)
t.color("black")
t.pensize(1)
t.begin_fill()
t.fillcolor("black")
t.circle(22)
t.end_fill()

运行之后的效果:

用python画出火柴人的代码 python用turtle画火柴人_用python画出火柴人的代码_07

然后开始画嘴巴:

t.speed(1)
moveto(-200, -60)
t.pensize(10)
t.color("brown")
t.seth(-70)
t.circle(215,150)

运行之后的效果:

用python画出火柴人的代码 python用turtle画火柴人_用python画几个东西怎么画_08

没有眉毛的滑稽哈哈哈

下面给滑稽加上一对眉毛:

#眉毛
t.color("black")
moveto(-200,160)
t.seth(60)
t.circle(-100,40)
t.circle(-50,90)
moveto(50,160)
t.seth(60)
t.circle(-100,40)
t.circle(-50,90)

然后滑稽就画完啦!

用python画出火柴人的代码 python用turtle画火柴人_用python画出火柴人的代码_09

完整的滑稽脸