用python画笑脸的算法步骤_用 Python 画一个奸笑(滑稽)表情

微信自带的表情大家应该都用过,其中奸笑(其他的平台也有叫滑稽的)的表情使用率算是比较高的,对于这个表情,有的人喜欢,也有的人不喜欢,这个都是正常的,我们不讨论这个。

大家应该都知道 Python 的 turtle 库可以画画,本文我们就使用这个库画一个奸笑表情。

由于微信上的表情尺寸较小,看起来不方便,我从网上找了一个大一点的,如下所示:

1460000022663912

我们可以看出这个表情的组成部分包括:脸框(就是那个大圆圈)、眼眉、眼眶、眼珠、红腮、嘴,下面我们开始画这几部分。

首先我们画脸框,代码实现如下所示:

penup()

goto(\-210,0)

seth(\-90)

pendown()

pencolor('#FFCC33')

pensize(4)

begin\_fill()

circle(210,360)

fillcolor('#FFFF99')

end\_fill()

pencolor('#330033')

看一下效果:

1460000022663911

接着眉毛,代码实现如下:

penup()

pensize(4)

goto(\-180,140)

pencolor('#585858')

pendown()

seth(70)

circle(\-60,140)

看一下效果:

1460000022663913

再接着画眼眶和眼珠,代码实现如下:

# 眼眶

penup()

pensize(4)

goto(\-180,90)

pencolor('#909090')

pendown()

seth(40)

begin\_fill()

circle(\-120,80)

penup()

goto(\-180,90)

seth(\-130)

pendown()

circle(15,110)

seth(40)

circle(\-106,83)

seth(30)

circle(18,105)

fillcolor('white')

end\_fill()

# 眼珠

pensize(2)

penup()

goto(30,83)

pendown()

begin\_fill()

circle(8,360)

fillcolor('black')

end\_fill()

penup()

goto(\-170,83)

pendown()

begin\_fill()

circle(8,360)

fillcolor('black')

end\_fill()

看一下效果:

1460000022663914

再接着画红腮,代码实现如下:

pensize(1)

pencolor('LightSalmon')

begin\_fill()

penup()

goto(\-160,50)

pendown()

seth(\-90)

for i in range(2):

for j in range(10):

forward(j)

left(9)

for j in range(10,0,\-1):

forward(j)

left(9)

fillcolor('LightSalmon')

end\_fill()

pensize(1)

pencolor('LightSalmon')

begin\_fill()

penup()

goto(40,50)

pendown()

seth(\-90)

for i in range(2):

for j in range(10):

forward(j)

left(9)

for j in range(10,0,\-1):

forward(j)

left(9)

fillcolor('LightSalmon')

end\_fill()

hideturtle()

看一下效果:

1460000022663915

最后我们画嘴,代码实现如下:

pensize(5)

penup()

goto(\-150,\-30)

pencolor('#585858')

pendown()

seth(\-90)

circle(150,180)

看一下最终效果:

1460000022663916

是不是有内味了。

源码在公众号 Python小二 后台回复 200516 获取。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值