本文收录于 《一起学Python趣味编程》专栏,从零基础开始,分享一些Python编程知识,欢迎关注,谢谢!
本文介绍如何使用Python的海龟画图工具turtle,画笑脸简笔画。
什么是Python?
Python是由荷兰人吉多·范罗苏姆于1990年代初设计的一门编程语言,应用领域非常广泛,尤其在数据分析、人工智能领域,已经成为最受欢迎的程序设计语言之一,比较适合新手学习。
这门编程语言之所以叫Python,意为大蟒蛇,是因为当时有一个电视喜剧《蒙提·派森的飞行马戏团》(Monty Python’s Flying Circus)在热播,很受大家喜欢。
什么是海龟画图工具turtle?
turtle,中文意思为海龟,是Python语言中自带的一个用于绘制图像的函数库。turtle函数库为使用者提供一个或多个小乌龟作为画笔,使用者可通过turtle库提供的各种方法来控制小乌龟在一个平面直角坐标系中移动并绘制移动轨迹以画出想要的图案。
首先,看一下使用Python画的笑脸简笔画是什么样的?
之后,看一下对应的Python代码,如下:
# 导入海龟画笔函数库
import turtle
"""
笑脸简笔画
@author 姑苏老陈
@date 2024-06-04
"""
# 创建画布对象
myScreen = turtle.Screen()
# 创建海龟画笔对象
myTurtle = turtle.Turtle()
# 设置画笔线条宽度
myTurtle.pensize(6)
# 设置画笔颜色
myTurtle.color('black')
# 画脸蛋
myTurtle.pendown()
myTurtle.circle(100)
myTurtle.penup()
# 画左眼
myTurtle.goto(-30, 120)
myTurtle.pendown()
myTurtle.left(90)
myTurtle.circle(12, 180)
myTurtle.penup()
# 画右眼
myTurtle.goto(40, 120)
myTurtle.pendown()
myTurtle.left(180)
myTurtle.circle(12, 180)
myTurtle.penup()
# 画嘴巴
myTurtle.goto(-40, 80)
myTurtle.pendown()
myTurtle.circle(35, 180)
# 隐藏画笔
myTurtle.hideturtle()
# 屏幕事件循序,保持窗口打开
myScreen.mainloop()
本次代码示例中涉及的Python知识点梳理如下:
turtle.color(*args)
返回或设置画笔颜色和填充颜色;
比如:turtle.color('red', 'pink'),设置画笔颜色为red、填充颜色为pink;
turtle.pensize(*width*)
设置线条的粗细为 width 或返回该值。如未指定参数,则返回当前的 pensize;
比如:turtle.pensize(10),设置画笔线条的粗细为10个像素;
turtle.pendown()
画笔落下 -- 移动时将画线。
turtle.penup()
画笔抬起 -- 移动时不画线
turtle.circle(radius, extent=None, steps=None)
参数:
radius -- 一个数值
extent -- 一个数值 (或 None)
steps -- 一个整型数 (或 None)
绘制一个 radius 指定半径的圆。圆心在海龟左边 radius 个单位;extent 为一个夹角,用来决定绘制圆的一部分。如未指定 extent* 则绘制整个圆。如果 *extent 不是完整圆周,则以当前画笔位置为一个端点绘制圆弧。如果 radius 为正值则朝逆时针方向绘制圆弧, 否则朝顺时针方向。最终海龟的朝向会依据 extent 的值而改变。
圆实际是以其内切正多边形来近似表示的,其边的数量由 steps 指定。如果未指定边数则会自动确定。此方法也可用来绘制正多边 形。
比如,turtle.circle(50, 360),画一个圆圈,半径为50个像素,角度为360度;
screen.mainloop()
开始事件循环。否则,程序执行完毕后,窗口会关闭;
turtle.left(*args)
设置海龟画笔左转指定的度,比如,turtle.left(160)
turtle.goto(x, y=None)
海龟移动到一个绝对坐标。如果 y 为 None,x 应为一个表示坐标的数值对。
比如,turtle.goto(-40, 80),海龟移动到X=-40,Y=80坐标值上;
turtle.hideturtle()
使海龟不可见。
以上介绍了如何使用Python的海龟画图工具turtle画笑脸简笔画。另外,对代码中涉及的Python编程知识点,做了简单的介绍。希望对大家有帮助,谢谢关注。
如果您对文章中内容有疑问,欢迎在评论区进行留言,我会尽量抽时间给您回复。如果文章对您有帮助,欢迎点赞、收藏。您的点赞,是对我最大的支持和鼓励,谢谢 :-)