![ca7a1b93a4df385a0e9c6a998d9f53b4.png](https://i-blog.csdnimg.cn/blog_migrate/cba567013fa5b84bf44badb9c637df4a.jpeg)
文 | 野客
来源:Python 技术「ID: pythonall」
![89e9fdac598dee0633be149e0d56dbc6.png](https://i-blog.csdnimg.cn/blog_migrate/1ced87a346daa3f0f7ca4ef76ce39a01.jpeg)
微信中的捂脸表情相信大家都不陌生,我见过以及自己使用这个表情的频率都是比较高的,可以说这个表情算是大部分人的主打表情之一了,本文我使用 Python 来画一下这个表情,我们使用到的库还是 turtle。
实现
因微信中的表情较小,我到网上找了一个大一点的,一起来看一下:
![4c50051e9ba1fb7cb1039f2f765f94bb.png](https://i-blog.csdnimg.cn/blog_migrate/e2a8bf370a11c07d1a7919c593c45525.jpeg)
从图中我们可以看出这个表情由:脸框(那个大圆圈)、手、眼睛、眼泪、嘴(包括牙齿),下面我们看一下如何使用 Python 来画它。
首先,我们来画脸框,代码实现如下:
turtle.speed(5)
turtle.setup(500, 500)
turtle.pensize(5)
turtle.right(90)
turtle.penup
turtle.fd(100)
turtle.left(90)
turtle.pendown
turtle.begin_fill
turtle.pencolor("#B8860B")
turtle.circle(150)
turtle.fillcolor("#FFFF99")
turtle.end_fill
看一下效果:
![6a27adb81dd3f2794e798d82fb492c77.png](https://i-blog.csdnimg.cn/blog_migrate/4f833099ed5059111b590d255ad65796.jpeg)
接着来画嘴(包括牙齿),代码实现如下:
turtle.penup
turtle.goto(77, 20)
turtle.pencolor("#B8860B")
turtle.goto(0, 50)
turtle.right(30)
turtle.fd(110)
turtle.right(90)
turtle.pendown
turtle.begin_fill
turtle.fillcolor("#925902")
turtle.circle(-97, 160)
turtle.goto(92, -3)
turtle.end_fill
turtle.penup
turtle.goto(77, -25)
# 牙齿
turtle.pencolor("white")
turtle.begin_fill
turtle.fillcolor("white")
turtle.goto(77, -24)
turtle.goto(-81, 29)
turtle.goto(-70, 43)
turtle.goto(77, -8)
turtle.end_fill
turtle.penup
turtle.goto(0, -100)
turtle.setheading(0)
turtle.pendown
看一下效果:
![d2d3c08ab2a97a9a242cb95eff27fb6a.png](https://i-blog.csdnimg.cn/blog_migrate/7797445544bf693f85ff68d17a5cabe0.jpeg)
再接着来画眼泪,代码实现如下:
# 左边眼泪
turtle.left(90)
turtle.pensize(3)
turtle.penup
turtle.fd(150)
turtle.right(60)
turtle.fd(-150)
turtle.pendown
turtle.left(20)
turtle.pencolor("#155F84")
turtle.fd(150)
turtle.right(180)
position1 = turtle.position
turtle.begin_fill
turtle.fillcolor("#B0E0E6")
turtle.fd(150)
turtle.right(20)
turtle.left(270)
turtle.circle(-150, 18)
turtle.right(52)
turtle.fd(110)
position2 = turtle.position
turtle.goto(-33, 90)
turtle.end_fill
# 右边眼泪
turtle.penup
turtle.goto(0, 0)
turtle.setheading(0)
turtle.left(90)
turtle.fd(50)
turtle.right(150)
turtle.fd(150)
turtle.left(150)
turtle.fd(100)
turtle.pendown
turtle.begin_fill
turtle.fd(-100)
turtle.fillcolor("#B0E0E6")
turtle.right(60)
turtle.circle(150, 15)
turtle.left(45)
turtle.fd(66)
turtle.goto(77, 20)
turtle.end_fill
看一下效果:
![c0af34b63c8790fe951b90408be7e7a7.png](https://i-blog.csdnimg.cn/blog_migrate/17ceddca60ca1e14d113cdf82ebc8b52.jpeg)
再接着画眼睛,代码实现如下:
turtle.pensize(5)
turtle.penup
turtle.pencolor("black")
turtle.goto(-65, 75)
turtle.setheading(0)
turtle.left(27)
turtle.fd(30)
turtle.pendown
turtle.begin_fill
turtle.fillcolor("black")
turtle.left(90)
turtle.circle(30, 86)
turtle.goto(position2[0], position2[1])
turtle.goto(position1[0], position1[1])
turtle.end_fill
看一下效果:
![d24197c63946a6d03d654f0afc4fea66.png](https://i-blog.csdnimg.cn/blog_migrate/b60f355c6997d32edc7b2865aca00374.jpeg)
最后,我们来画手,代码实现如下:
turtle.pencolor("#B8860B")
turtle.fillcolor("#FFFF99")
arc(-110, 10, 110, -40, 30)
turtle.begin_fill
turtle.circle(300, 35)
turtle.circle(13, 120)
turtle.setheading(-50)
turtle.fd(20)
turtle.setheading(130)
turtle.circle(200, 15)
turtle.circle(12, 180)
turtle.fd(40)
turtle.setheading(137)
turtle.circle(200, 16)
turtle.circle(12, 160)
turtle.setheading(-35)
turtle.fd(45)
turtle.setheading(140)
turtle.circle(200, 13)
turtle.circle(11, 160)
turtle.setheading(-35)
turtle.fd(40)
turtle.setheading(145)
turtle.circle(200, 9)
turtle.circle(10, 180)
turtle.setheading(-31)
turtle.fd(50)
turtle.setheading(-45)
turtle.pensize(7)
turtle.right(5)
turtle.circle(180, 35)
turtle.end_fill
turtle.begin_fill
turtle.setheading(-77)
turtle.fd(50)
turtle.left(-279)
turtle.fd(16)
turtle.circle(29, 90)
turtle.end_fill
看一下最终效果:
![5c7d5b3c4f0281425d5abade7b02de51.png](https://i-blog.csdnimg.cn/blog_migrate/8d69ba0fa91758c64b4b0f625197285d.jpeg)
是不是有内味了。
总结
本文我们使用 Python 画了一个捂脸表情,如果大家对实现效果不满意的话,可以自己动手将它修改成自己满意的样子。
PS:公号内回复 :Python,即可进入Python 新手学习交流群,一起100天计划!
老规矩,兄弟们还记得么,,如果感觉文章内容不错的话,记得分享朋友圈让更多的人知道!
![b6ad12922876ccde677deb5a495c814c.png](https://i-blog.csdnimg.cn/blog_migrate/09e95bf41bf3e2bad6ecf95fe2cfa815.jpeg)
![2b914346ceef9cf5e41f66921a5580a3.gif](https://i-blog.csdnimg.cn/blog_migrate/d4634c84acda8e22b40310534a0b0809.gif)
【代码获取方式】
![551a6be5929483526c174bda041648a1.png](https://i-blog.csdnimg.cn/blog_migrate/aade566567f3d356ae835c25c3062fba.jpeg)