当前位置:首页>python>用 Python 画小猪佩奇超简单!附画图代码 + 函数解析,零基础也能写完整编程代码

用 Python 画小猪佩奇超简单!附画图代码 + 函数解析,零基础也能写完整编程代码

  • 2026-08-27 09:00:00
用 Python 画小猪佩奇超简单!附画图代码 + 函数解析,零基础也能写完整编程代码

点击蓝字 关注我们

一、课程导入

哈喽,朋友们,又见面了!今天我们来学习一个超级可爱的Python项目吧?大家肯定都认识小猪佩奇,对吧?今天我们就用Python的turtle模块来画一个可爱的小猪佩奇!

真正的课程导入语:同学们!有没有想过用代码画出可爱的小猪佩奇?今天的Python课堂,我们就要解锁超可爱的"小猪佩奇绘制"项目!想象一下:你亲手编写的代码,让电脑画出一个红红的、胖胖的小猪佩奇,还有绿绿的草地和蓝蓝的天空。这一切都能在Python里实现!通过这节课,我们会学会函数调用、循环语句、颜色设置这些核心编程技巧,更能锻炼逻辑思维和创造力。接下来,就让我们一起化身小小画家,用代码画出属于自己的小猪佩奇吧!准备好开启这场编程艺术之旅了吗?现在,Let's code!

(扫码体验并获取完整代码)

二、作品效果

我希望你能通过作品效果,总结作品的关键操作步骤。

  1. 绘制背景(草地和天空)

  2. 绘制小猪佩奇的头部

  3. 绘制小猪佩奇的耳朵

  4. 绘制小猪佩奇的眼睛

  5. 绘制小猪佩奇的鼻子

  6. 绘制小猪佩奇的脸颊

  7. 绘制小猪佩奇的嘴巴

  8. 绘制小猪佩奇的身体

  9. 绘制小猪佩奇的四肢

  10. 绘制小猪佩奇的尾巴

  11. 绘制天空中的云朵

你总结的可能跟我不一样,但是大差不差,也许你的更好。

思考时间

三、用到的模块

  1. turtle模块:Python的绘图模块,就像一支神奇的画笔,可以在屏幕上画出各种图形

四、逻辑分析

小猪佩奇绘制逻辑├── 初始化设置│   ├── 设置画笔大小│   ├── 隐藏画笔(海龟)│   ├── 设置颜色模式│   ├── 设置背景色│   └── 设置绘制速度├── 绘制背景│   ├── 绘制草地│   └── 绘制天空├── 绘制小猪佩奇│   ├── 绘制头部│   ├── 绘制耳朵│   ├── 绘制眼睛│   ├── 绘制鼻子│   ├── 绘制脸颊│   ├── 绘制嘴巴│   ├── 绘制身体│   ├── 绘制四肢│   └── 绘制尾巴├── 绘制云朵│   ├── 绘制第一朵云│   └── 绘制第二朵云└── 完成绘制

五、具体操作

我希望你在看下面过程之前,你自己能根据作品效果做出至少80%(做不出来的话,你要清楚的知道自己哪里不会哪里不清晰)。这样你在看下面的操作之后才能真正学到一些"知识",不经过自己思考就得到的答案,不深刻,逻辑思维也不会得到提升。

1. 初始化设置

代码解析:

defsetting():"""设置参数"""pensize(5)# 隐藏海龟hideturtle()colormode(255)color((255, 155, 192), "pink")setup(840, 700)speed(10)

这段代码的作用是设置绘图的基本参数:

  • pensize(5):设置画笔的粗细为5,就像我们选择一支5号的画笔

  • hideturtle():隐藏海龟(画笔),这样绘图时就不会看到画笔在移动

  • colormode(255):设置颜色模式为255,这样我们可以用RGB颜色值来设置颜色

  • color((255, 155, 192), "pink"):设置画笔颜色为粉色,填充颜色也为粉色

  • setup(840, 700):设置画布的大小为840x700像素,就像我们准备一张840x700的画纸

  • speed(10):设置绘图速度为10,数字越大速度越快,这样绘图时不会太慢

为什么要这样设计呢?因为在开始绘图前,我们需要做一些准备工作,就像我们画画前要准备好画笔、画纸一样。

2. 绘制背景

代码解析:

defbackg(x):penup()goto(-420, x)setheading(0)fillcolor(50, 205, 50)begin_fill()forward(840)right(90)forward(300)right(90)forward(840)right(90)forward(300)end_fill()setheading(0)fillcolor(0, 191, 255)begin_fill()forward(840)left(90)forward(600)left(90)forward(840)left(90)forward(600)end_fill()

这段代码的作用是绘制背景,包括草地和天空:

  • penup():抬起画笔,这样移动时不会留下痕迹

  • goto(-420, x):移动画笔到左上角的位置,准备开始绘制

  • setheading(0):设置画笔的方向为向右(0度方向)

  • 首先绘制草地:填充颜色为绿色,绘制一个长方形

  • 然后绘制天空:填充颜色为蓝色,绘制一个长方形

为什么要这样设计呢?因为我们需要一个漂亮的背景,让小猪佩奇看起来像是在户外玩耍一样。

3. 绘制头部

代码解析:

defhead(x, y):"""画头"""color((255, 155, 192), "pink")penup()goto(x, y)setheading(0)pendown()begin_fill()setheading(180)circle(300, -30)circle(100, -60)circle(80, -100)circle(150, -20)circle(60, -95)setheading(161)circle(-300, 15)penup()goto(-100, 100)pendown()setheading(-30)a = 0.4foriinrange(60):if0<= i<30or60<= i<90:a = a+0.08lt(3)  # 向左转3度fd(a)  # 向前走a的步长else:a = a-0.08lt(3)fd(a)end_fill()

这段代码的作用是绘制小猪佩奇的头部:

  • 设置画笔颜色和填充颜色为粉色

  • 移动画笔到指定位置,开始绘制

  • 使用circle()函数绘制头部的轮廓,通过不同大小和角度的圆来组成头部的形状

  • 最后绘制头部的细节,使用循环和变量a来绘制头部的曲线部分

  • begin_fill()和end_fill()之间的部分会被填充为粉色

为什么要这样设计呢?因为小猪佩奇的头部是一个不规则的形状,我们需要用多个圆和曲线来组成它,就像我们用不同的积木块来搭建一个形状一样。

4. 绘制耳朵

代码解析:

defears(x, y):"""画耳朵"""color((255, 155, 192), "pink")penup()goto(x, y)pendown()begin_fill()setheading(100)circle(-50, 50)circle(-10, 120)circle(-50, 54)end_fill()penup()setheading(90)forward(-12)setheading(0)forward(30)pendown()begin_fill()setheading(90)circle(-50, 50)circle(-10, 120)circle(-50, 56)end_fill()

这段代码的作用是绘制小猪佩奇的两只耳朵:

  • 首先绘制第一只耳朵,使用circle()函数绘制耳朵的形状

  • 然后移动画笔到另一个位置,绘制第二只耳朵

  • 每只耳朵都是一个粉色的填充形状

为什么要这样设计呢?因为耳朵是小猪佩奇的重要特征,我们需要把它们画出来,让小猪佩奇看起来更可爱。

5. 绘制眼睛

代码解析:

defeyes(x, y):"""画眼睛"""color((255, 155, 192), "white")penup()setheading(90)forward(-20)setheading(0)forward(-95)pendown()begin_fill()circle(15)end_fill()color("black")penup()setheading(90)forward(12)setheading(0)forward(-3)pendown()begin_fill()circle(3)end_fill()color((255, 155, 192), "white")penup()seth(90)forward(-25)seth(0)forward(40)pendown()begin_fill()circle(15)end_fill()color("black")penup()setheading(90)forward(12)setheading(0)forward(-3)pendown()begin_fill()circle(3)end_fill()

这段代码的作用是绘制小猪佩奇的两只眼睛:

  • 首先绘制白色的眼白部分,使用circle(15)绘制一个15像素的圆

  • 然后在眼白中间绘制黑色的眼珠,使用circle(3)绘制一个3像素的圆

  • 然后移动画笔到另一个位置,绘制第二只眼睛

为什么要这样设计呢?因为眼睛是心灵的窗户,我们需要把小猪佩奇的眼睛画得大大的、黑黑的,让它看起来更可爱、更有精神。

6. 绘制鼻子

代码解析:

defnose(x, y):"""画鼻子"""pensize(5)pencolor((255, 155, 192))penup()# 将海龟移动到指定的坐标goto(x, y)pendown()# 设置海龟的方向(0-东、90-北、180-西、270-南)setheading(-30)begin_fill()fillcolor(255, 192, 203)a = 0.4foriinrange(120):if0<= i<30or60<= i<90:a = a+0.08# 向左转3度left(3)# 向前走forward(a)else:a = a-0.08left(3)forward(a)end_fill()penup()setheading(90)forward(25)setheading(0)forward(10)pendown()# 设置画笔的颜色(红, 绿, 蓝)pencolor(255, 155, 192)setheading(10)begin_fill()circle(5)color(160, 82, 45)end_fill()penup()setheading(0)forward(20)pendown()pencolor(255, 155, 192)setheading(10)begin_fill()circle(5)color(160, 82, 45)end_fill()

这段代码的作用是绘制小猪佩奇的鼻子:

  • 设置画笔粗细为5,颜色为粉色

  • 移动画笔到指定位置,开始绘制鼻子的轮廓

  • 使用循环和变量a来绘制鼻子的曲线形状

  • 填充颜色为粉色

  • 然后在鼻子的两端绘制两个黑色的鼻孔,使用circle(5)绘制5像素的圆

为什么要这样设计呢?因为鼻子是小猪佩奇的重要特征,我们需要把它画得红红的、圆圆的,让它看起来更可爱。

7. 绘制脸颊

代码解析:

defcheek(x, y):"""画脸颊"""color((255, 155, 192))penup()goto(x, y)pendown()setheading(0)begin_fill()circle(30)end_fill()

这段代码的作用是绘制小猪佩奇的脸颊:

  • 设置画笔颜色为粉色

  • 移动画笔到指定位置

  • 使用circle(30)绘制一个30像素的圆作为脸颊

  • 填充颜色为粉色

为什么要这样设计呢?因为小猪佩奇的脸颊是红红的,这是它的特点之一,让它看起来更可爱、更有气色。

8. 绘制嘴巴

代码解析:

defmouth(x, y):"""画嘴巴"""color(239, 69, 19)penup()goto(x, y)pendown()setheading(-80)circle(30, 40)circle(40, 80)

这段代码的作用是绘制小猪佩奇的嘴巴:

  • 设置画笔颜色为红色

  • 移动画笔到指定位置

  • 使用circle()函数绘制嘴巴的曲线形状

为什么要这样设计呢?因为嘴巴是表情的重要部分,我们需要把它画出来,让小猪佩奇看起来更生动。

9. 绘制身体

代码解析:

defbody(x, y):'''画身体'''penup()goto(x, y)pencolor('red')fillcolor(250, 106, 106)pendown()begin_fill()setheading(-66)circle(-450, 17)setheading(180)forward(185)setheading(85)circle(-450, 17)end_fill()'''右手'''penup()goto(110, -45)pendown()pensize(8)pencolor(255, 192, 203)setheading(30)circle(-400, 10)penup()goto(167, -5)pendown()setheading(-120)forward(20)left(100)forward(20)'''左手'''penup()goto(-25, -45)pendown()pencolor(255, 192, 203)setheading(150)circle(400, 10)penup()goto(-78, -6)pendown()setheading(-60)forward(20)right(100)forward(20)

这段代码的作用是绘制小猪佩奇的身体和四肢:

  • 首先绘制身体,使用circle()函数绘制身体的轮廓,填充颜色为红色

  • 然后绘制右手,使用circle()函数绘制手臂的曲线,然后绘制手的形状

  • 最后绘制左手,同样使用circle()函数和直线来绘制

为什么要这样设计呢?因为身体是小猪佩奇的重要部分,我们需要把它画得胖胖的、红红的,让它看起来更可爱。手臂的曲线让它看起来更自然。

10. 绘制脚

代码解析:

deffeet1(x, y):pensize(7)pencolor(255, 192, 203)penup()goto(x, y)setheading(-90)pendown()forward(10)penup()goto(x-12, y-10)pendown()pencolor(238, 201, 0)fillcolor(238, 230, 132)begin_fill()setheading(0)forward(24)right(90)forward(36)right(90)forward(40)circle(-10, 180)forward(16)left(90)forward(12)end_fill()deffeet2(x, y):pensize(7)pencolor(255, 192, 203)penup()goto(x, y)setheading(-90)pendown()forward(10)penup()goto(x-12, y-10)pendown()pencolor(238, 201, 0)fillcolor(238, 230, 132)begin_fill()setheading(0)forward(24)right(90)forward(36)right(90)forward(40)circle(-10, 180)forward(16)left(90)forward(12)end_fill()

这段代码的作用是绘制小猪佩奇的两只脚:

  • feet1()函数绘制第一只脚,包括粉色的脚踝和黄色的鞋子

  • feet2()函数绘制第二只脚,同样包括粉色的脚踝和黄色的鞋子

  • 使用circle()函数和直线来绘制鞋子的形状

  • 填充颜色为黄色,让鞋子看起来更漂亮

为什么要这样设计呢?因为小猪佩奇需要脚来走路,黄色的鞋子是它的标志之一,让它看起来更时尚。

11. 绘制尾巴

代码解析:

deftail(x, y):pensize(8)penup()goto(x, y)pendown()pencolor(255, 192, 203)setheading(-5)circle(30, 100)circle(10, 180)circle(20, 150)

这段代码的作用是绘制小猪佩奇的尾巴:

  • 设置画笔粗细为8,颜色为粉色

  • 移动画笔到指定位置

  • 使用circle()函数绘制尾巴的卷曲形状

为什么要这样设计呢?因为小猪佩奇的尾巴是卷曲的,这是它的特点之一,让它看起来更可爱。

12. 绘制云朵

代码解析:

defcloude1(x, y):"""画云"""penup()goto(x, y)setheading(90)fillcolor(255, 255, 255)begin_fill()a = 0.4foriinrange(120):if0<= i<30or60<= i<90:a = a+0.14# 向左转3度left(3)# 向前走forward(a)else:a = a-0.15left(3)forward(a)end_fill()defcloude2(x, y):"""画云"""penup()goto(x, y)setheading(90)fillcolor(255, 255, 255)begin_fill()a = 0.4foriinrange(120):if0<= i<30or60<= i<90:a = a+0.15# 向左转3度left(3)# 向前走forward(a)else:a = a-0.13left(3)forward(a)end_fill()

这段代码的作用是绘制天空中的两朵云:

  • cloude1()函数绘制第一朵云,使用循环和变量a来绘制云朵的形状

  • cloude2()函数绘制第二朵云,同样使用循环和变量a来绘制云朵的形状

  • 填充颜色为白色,让云朵看起来更真实

为什么要这样设计呢?因为天空中飘着白云,让整个画面看起来更漂亮、更有层次感。

13. 主函数

代码解析:

defmain():"""主函数"""setting()backg(0)body(105, -20)nose(-100, 100)head(-69, 167)ears(0, 160)eyes(0, 140)cheek(80, 10)mouth(-20, 30)feet1(10, -150)feet2(90, -150)tail(130, -110)cloude1(-200, 200)cloude2(300, 300)done()if__name__ == '__main__':main()

这段代码是程序的主函数,它的作用是调用前面定义的所有函数来绘制完整的小猪佩奇:

  • 首先调用setting()函数设置绘图参数

  • 然后调用backg(0)函数绘制背景

  • 接着依次调用各个函数绘制小猪佩奇的各个部分:身体、鼻子、头部、耳朵、眼睛、脸颊、嘴巴、脚、尾巴

  • 然后调用cloude1()和cloude2()函数绘制云朵

  • 最后调用done()函数完成绘图

  • if __name__ == '__main__': main()是Python的标准写法,当直接运行这个文件时,会执行main()函数

为什么要这样设计呢?因为我们需要一个主函数来组织所有的绘制步骤,就像我们画画时要按照一定的顺序来画:先画背景,再画身体,再画头部,再画细节。

六、课程拓展

如果想让小猪佩奇更有趣,你可以尝试添加一些新功能:

  1. 添加太阳:在天空中画一个黄色的太阳,让画面更明亮

  2. 添加草地细节:在草地上画一些小花,让草地更漂亮

  3. 添加彩虹:在天空中画一道彩虹,让画面更丰富多彩

  4. 添加小猪乔治:在小猪佩奇旁边画一个小一点的小猪乔治,让他们成为好朋友

  5. 添加房子:在背景中画一个房子,让小猪佩奇有一个家

  6. 添加动画效果:让小猪佩奇的耳朵或尾巴动起来,让它更生动

  7. 添加颜色选择:让用户可以选择小猪佩奇的颜色,比如粉色、蓝色、绿色等

你能尝试实现这些功能吗?

七、程序原理总结

通过分析这个"小猪佩奇绘制"程序,我们学到了以下重要的编程概念:

1. 函数的使用:把不同的绘制任务分成不同的函数,比如head()函数画头部,eyes()函数画眼睛,这样代码更整洁,更容易理解和修改。就像我们把不同的任务分给不同的人来做一样。

2. 循环语句:使用for循环来绘制曲线形状,比如头部的轮廓、云朵的形状等。循环可以让我们重复执行相同的操作,节省代码。

3. 颜色设置:使用RGB颜色值来设置不同的颜色,比如粉色的身体、红色的衣服、黄色的鞋子等。颜色让画面更漂亮、更有层次感。

4. 坐标系统:使用turtle模块的坐标系统来定位绘制的位置,比如goto(x, y)移动到指定的坐标位置。坐标就像地图上的位置,告诉我们东西应该画在哪里。

5. 图形绘制:使用circle()函数绘制圆形和曲线,使用直线绘制简单的形状。不同的图形组合起来,就可以画出复杂的图案。

6. 填充效果:使用begin_fill()和end_fill()来填充图形的颜色,让画面更饱满、更漂亮。

7. 模块化编程:把整个程序分成不同的部分,每个部分负责一个具体的任务,这样代码更清晰,更容易维护和修改。就像我们整理房间时,把不同的东西放在不同的地方一样。

八、文章结尾

好了,今天的"小猪佩奇绘制"项目就讲到这里啦!希望你们都能做出自己的小猪佩奇,甚至可以尝试画出小猪乔治、小羊苏西等其他角色!如果有什么问题,欢迎在评论区留言哦!我们下期再见~拜拜~


喜欢这篇文章的话,记得点赞、收藏、转发给你的小伙伴们哦!我们下期再见!👋

01
—
python turtle交流群
获取最新python turtle案例
02
—
scratch素材--软件集成版
给孩子找素材是一件麻烦的事情,找的图片还有可能给孩子扣好背景,或者扣成孩子想要的样子。即使去淘宝买的素材,也要从百度网盘,但素材太多大了或者太多文件,也要充值百度网盘超级会员才能保存,提高下载速度。即使下载了,也要上传,不是特别方便,尤其是不好查找。
口口老师深知各位家长的痛点,将常用素材集成在软件角色和背景库当中,无需上传,只需要角色/背景库中查找。更有每月更新版,让孩子专注于编程,发挥创意即可。
关注即可领取,下载不限速,方便快捷。

微信号|scratch-coco

最新文章

随机文章