点击蓝字 关注我们

哈喽,朋友们,又见面了!今天我们来学习一个超级酷的Python项目——用代码绘制Android机器人!相信很多小朋友都见过Android机器人吧?它是安卓手机的标志,一个绿色的小机器人,非常可爱!今天我们就用Python的turtle库来画出这个绿色的小机器人,体验一下编程的神奇魅力!

真正的课程导入语:同学们!有没有想过用代码画出Android机器人?今天的Python课堂,我们就要解锁超酷的「Android机器人绘制」编程技能!想象一下:你敲出几行代码,屏幕上就会慢慢画出一个绿色的小机器人,有圆圆的脑袋、方方的身体、细细的手臂和短短的腿,就像变魔术一样!这一切都能在Python里实现!通过这节课,我们会学会使用turtle库、控制画笔移动、填充颜色这些核心编程技巧,更能锻炼逻辑思维和创造力。接下来,就让我们一起化身小小程序员,用代码画出属于自己的Android机器人,看看谁的机器人最可爱!准备好开启这场编程冒险了吗?现在,Let's code!
我希望你能通过作品效果,总结作品的关键操作步骤。

(扫码运行代码)
程序启动,设置黑色背景
绘制Android机器人的头部(绿色圆形,带眼睛和天线)
绘制Android机器人的身体(绿色矩形)
绘制Android机器人的腿部(两个绿色的粗线条)
绘制Android机器人的手臂(两个绿色的粗线条)
显示「Thank you for watching....」和「少儿编程吕口口」文字
你总结的可能跟我不一样,但是大差不差,也许你的更好。
思考时间
turtle模块:Python的绘图库,就像我们的画笔,可以在屏幕上画画
基本绘图命令:
speed():设置画笔速度
bgcolor():设置背景颜色
color():设置画笔颜色
fd():向前移动指定距离
xcor():获取当前x坐标
seth():设置画笔方向
begin_fill():开始填充颜色
circle():画一个指定半径和角度的圆
end_fill():结束填充颜色
penup():抬起画笔,移动时不留下痕迹
goto():移动到指定坐标
pendown():放下画笔,移动时留下痕迹
dot():画一个指定大小和颜色的点
home():返回原点(0, 0)
hideturtle():隐藏画笔
right():向右转指定角度
pensize():设置画笔大小
showturtle():显示画笔
left():向左转指定角度
reset():重置画笔状态
pencolor():设置画笔颜色
write():在指定位置写入文字
done():完成绘图,保持窗口打开
Android机器人绘制逻辑├── 初始化设置│ ├── 导入turtle模块│ ├── 设置画笔速度│ └── 设置黑色背景├── 绘制头部│ ├── 绘制绿色圆形头部│ ├── 填充头部颜色│ ├── 绘制眼睛(黑色圆点)│ └── 绘制天线├── 绘制身体│ ├── 绘制绿色矩形身体│ └── 填充身体颜色├── 绘制腿部│ ├── 绘制左腿│ └── 绘制右腿├── 绘制手臂│ ├── 绘制左臂│ └── 绘制右臂└── 完成绘制 ├── 显示感谢文字 ├── 显示作者信息 └── 保持窗口打开
我希望你在看下面过程之前,你自己能根据作品效果做出至少80%(做不出来的话,你要清楚的知道自己哪里不会哪里不清晰)。这样你在看下面的操作之后才能真正学到一些「知识」,不经过自己思考就得到的答案,不深刻,逻辑思维也不会得到提升。
【初始化代码】
importturtleasty = 0t.speed(5)# t.screensize(200,800)t.bgcolor("black")# t.shape("turtle")
详细程序讲解:
import turtle as t:导入turtle模块,并给它起一个简短的名字t,这样我们就可以使用t来调用它的功能了
y = 0:定义一个变量y,初始值为0,后面会用到
t.speed(5):设置画笔的速度为5,数值越大速度越快
# t.screensize(200,800):这是一个注释,意思是设置屏幕大小为200x800,但是被注释掉了,所以不会执行
t.bgcolor("black"):设置背景颜色为黑色,这样绿色的机器人会更明显
# t.shape("turtle"):这是一个注释,意思是设置画笔形状为乌龟,但是被注释掉了,所以不会执行
为什么要这样编写?
导入模块:使用turtle库的绘图功能
设置速度:让绘制过程既不会太快也不会太慢,方便我们观察
设置背景:黑色背景可以让绿色的机器人更突出,看起来更酷
【头部代码】
defhead():t.color("green")t.fd(160)x = t.xcor()t.seth(90)t.begin_fill()# t.color("green")t.circle(x/2, 180)t.end_fill()t.penup()t.goto(33, 37)t.pendown()t.dot(13, "black")t.penup()t.goto(126, 37)t.pendown()t.dot(13, "black")t.penup()t.home()t.pendown()t.hideturtle()t.fd(160)t.seth(90)t.circle(x/2, 60)t.right(90)t.pensize(5)t.fd(30)t.penup()t.home()# t.pendown()t.hideturtle()t.fd(160)t.seth(90)t.circle(x/2, 120)t.right(90)t.pensize(5)t.pendown()t.fd(30)t.penup()t.home()t.penup()
详细程序讲解:
def head()::定义一个函数,名字叫head,用来绘制机器人的头部
t.color("green"):设置画笔颜色为绿色
t.fd(160):向前移动160个单位,画出一条水平线
x = t.xcor():获取当前x坐标,这个值将用来计算头部的半径
t.seth(90):设置画笔方向为90度(向上)
t.begin_fill():开始填充颜色
# t.color("green"):这是一个注释,设置画笔颜色为绿色,但是被注释掉了,所以不会执行
t.circle(x / 2, 180):画一个半径为x/2的圆,只画180度(半圆),这样就形成了头部的形状
t.end_fill():结束填充颜色,这样头部就变成绿色的了
t.penup():抬起画笔,移动时不留下痕迹
t.goto(33, 37):移动到坐标(33, 37)
t.pendown():放下画笔,移动时留下痕迹
t.dot(13, "black"):画一个大小为13,颜色为黑色的点,这是机器人的左眼
t.penup():抬起画笔
t.goto(126, 37):移动到坐标(126, 37)
t.pendown():放下画笔
t.dot(13, "black"):画一个大小为13,颜色为黑色的点,这是机器人的右眼
t.penup():抬起画笔
t.home():返回原点(0, 0)
t.pendown():放下画笔
t.hideturtle():隐藏画笔
t.fd(160):向前移动160个单位
t.seth(90):设置画笔方向为90度(向上)
t.circle(x / 2, 60):画一个半径为x/2的圆,只画60度
t.right(90):向右转90度
t.pensize(5):设置画笔大小为5
t.fd(30):向前移动30个单位,画出机器人的左天线
t.penup():抬起画笔
t.home():返回原点(0, 0)
# t.pendown():这是一个注释,放下画笔,但是被注释掉了,所以不会执行
t.hideturtle():隐藏画笔
t.fd(160):向前移动160个单位
t.seth(90):设置画笔方向为90度(向上)
t.circle(x / 2, 120):画一个半径为x/2的圆,只画120度
t.right(90):向右转90度
t.pensize(5):设置画笔大小为5
t.pendown():放下画笔
t.fd(30):向前移动30个单位,画出机器人的右天线
t.penup():抬起画笔
t.home():返回原点(0, 0)
t.penup():抬起画笔
为什么要这样编写?
函数定义:将绘制头部的代码放在一个函数里,使代码结构更清晰
填充颜色:使用begin_fill和end_fill填充头部为绿色,让头部看起来更真实
计算半径:通过获取当前x坐标来计算头部的半径,这样头部大小会自动适应
绘制眼睛:使用dot函数画黑色的点作为眼睛,让机器人看起来更可爱
绘制天线:在头部两侧画出天线,增加机器人的特色
【身体代码】
defbody():t.pensize(0)t.home()t.showturtle()t.goto(0, -7)t.pendown()t.begin_fill()t.fd(160)t.right(90)t.fd(120)t.right(90)t.fd(160)y = t.ycor()t.right(90)t.fd(120)t.end_fill()
详细程序讲解:
def body()::定义一个函数,名字叫body,用来绘制机器人的身体
t.pensize(0):设置画笔大小为0,这样身体的边框就不会显示出来
t.home():返回原点(0, 0)
t.showturtle():显示画笔
t.goto(0, -7):移动到坐标(0, -7),这是身体的起始位置
t.pendown():放下画笔
t.begin_fill():开始填充颜色
t.fd(160):向前移动160个单位,画出身体的上边缘
t.right(90):向右转90度
t.fd(120):向前移动120个单位,画出身体的右边缘
t.right(90):向右转90度
t.fd(160):向前移动160个单位,画出身体的下边缘
y = t.ycor():获取当前y坐标,这个值在这里没有被使用,只是为了保持代码结构
t.right(90):向右转90度
t.fd(120):向前移动120个单位,画出身体的左边缘
t.end_fill():结束填充颜色,这样身体就变成绿色的了
为什么要这样编写?
函数定义:将绘制身体的代码放在一个函数里,使代码结构更清晰
无边界:设置画笔大小为0,让身体看起来没有边框,更美观
矩形身体:通过画四条边,形成一个矩形的身体,这是Android机器人的经典形状
填充颜色:使用begin_fill和end_fill填充身体为绿色,与头部颜色保持一致
【腿部代码】
deflegs():t.penup()# t.color("red")t.goto(33, -169)t.pendown()t.pensize(32)t.fd(43)t.penup()t.goto(130, -169)t.pendown()t.fd(43)t.penup()
详细程序讲解:
def legs()::定义一个函数,名字叫legs,用来绘制机器人的腿部
t.penup():抬起画笔
# t.color("red"):这是一个注释,设置画笔颜色为红色,但是被注释掉了,所以不会执行
t.goto(33, -169):移动到坐标(33, -169),这是左腿的起始位置
t.pendown():放下画笔
t.pensize(32):设置画笔大小为32,这样腿会看起来比较粗
t.fd(43):向前移动43个单位,画出左腿
t.penup():抬起画笔
t.goto(130, -169):移动到坐标(130, -169),这是右腿的起始位置
t.pendown():放下画笔
t.fd(43):向前移动43个单位,画出右腿
t.penup():抬起画笔
为什么要这样编写?
函数定义:将绘制腿部的代码放在一个函数里,使代码结构更清晰
画笔大小:设置画笔大小为32,让腿看起来比较粗,符合Android机器人的比例
两条腿:在身体下方画出两条腿,让机器人能够「站立」
【手臂代码】
defhands():t.home()t.pensize(30)t.goto(-18, -77)t.pendown()t.left(90)t.fd(65)t.penup()t.goto(179, -77)t.pendown()t.fd(65)t.penup()t.hideturtlet.fd(100)t.hideturtle()t.circle(100)t.circle(100, 360, 59)t.reset()t.bgcolor("black")t.pencolor("green")t.hideturtle()t.goto(-300, 0)t.hideturtlet.write("Thank you for watching....", font=("Bodoni MT Black", 28, "bold"))t.penup()t.goto(-40, -170)t.pendown()t.pencolor("yellow")t.write("少儿编程吕口口", font=("Palatino Linotype", 22, "bold"))
详细程序讲解:
def hands()::定义一个函数,名字叫hands,用来绘制机器人的手臂
t.home():返回原点(0, 0)
t.pensize(30):设置画笔大小为30,这样手臂会看起来比较粗
t.goto(-18, -77):移动到坐标(-18, -77),这是左臂的起始位置
t.pendown():放下画笔
t.left(90):向左转90度(向上)
t.fd(65):向前移动65个单位,画出左臂
t.penup():抬起画笔
t.goto(179, -77):移动到坐标(179, -77),这是右臂的起始位置
t.pendown():放下画笔
t.fd(65):向前移动65个单位,画出右臂
t.penup():抬起画笔
t.hideturtle:隐藏画笔(这里缺少括号,应该是t.hideturtle(),但不影响运行)
t.fd(100):向前移动100个单位
t.hideturtle():隐藏画笔
t.circle(100):画一个半径为100的圆
t.circle(100, 360, 59):画一个半径为100的圆,360度,59条边(多边形)
t.reset():重置画笔状态
t.bgcolor("black"):设置背景颜色为黑色
t.pencolor("green"):设置画笔颜色为绿色
t.hideturtle():隐藏画笔
t.goto(-300, 0):移动到坐标(-300, 0)
t.hideturtle:隐藏画笔(这里缺少括号,应该是t.hideturtle(),但不影响运行)
t.write("Thank you for watching....", font=("Bodoni MT Black", 28, "bold")):在当前位置写入「Thank you for watching....」,字体为Bodoni MT Black,大小为28,粗体
t.penup():抬起画笔
t.goto(-40, -170):移动到坐标(-40, -170)
t.pendown():放下画笔
t.pencolor("yellow"):设置画笔颜色为黄色
t.write("少儿编程吕口口", font=("Palatino Linotype", 22, "bold")):在当前位置写入「少儿编程吕口口」,字体为Palatino Linotype,大小为22,粗体
为什么要这样编写?
函数定义:将绘制手臂的代码放在一个函数里,使代码结构更清晰
画笔大小:设置画笔大小为30,让手臂看起来比较粗,符合Android机器人的比例
两条手臂:在身体两侧画出两条手臂,让机器人看起来更完整
写入文字:在绘制完成后写入感谢文字和作者信息,增加作品的完整性
【主函数代码】
head()body()legs()hands()t.done()
详细程序讲解:
head():调用head函数,绘制机器人的头部
body():调用body函数,绘制机器人的身体
legs():调用legs函数,绘制机器人的腿部
hands():调用hands函数,绘制机器人的手臂
t.done():完成绘图,保持窗口打开,这样我们就能看到画好的机器人了
为什么要这样编写?
函数调用:按照顺序调用各个函数,先画头部,再画身体,然后画腿部和手臂,最后完成绘图
保持窗口:使用done()函数保持窗口打开,让我们有足够的时间欣赏画好的机器人
现在让我来总结一下整个代码的逻辑关系:
初始化:首先导入turtle模块,设置画笔速度和黑色背景
定义函数:定义head、body、legs和hands四个函数,分别用来绘制机器人的不同部分
绘制顺序:按照头部 → 身体 → 腿部 → 手臂的顺序绘制机器人
细节处理:
使用填充颜色让机器人的头部和身体看起来更真实
计算头部半径,使头部大小自动适应
绘制眼睛和天线,增加机器人的特色
使用不同大小的画笔绘制身体的不同部分,保持比例协调
最后写入感谢文字和作者信息,增加作品的完整性
为什么要这样设计?
模块化设计:将不同部分的绘制代码放在不同的函数里,使代码结构清晰,易于理解和修改
顺序绘制:按照从头部到身体再到四肢的顺序绘制,符合我们的认知习惯
细节处理:添加眼睛、天线等细节,让机器人看起来更可爱、更有特色
比例协调:使用不同大小的画笔,保持机器人各部分的比例协调
如果想让Android机器人更有趣,你可以尝试添加一些新功能:
添加颜色:尝试使用不同的颜色绘制机器人,比如蓝色、红色或黄色
添加表情:在机器人的脸上画出不同的表情,比如微笑、惊讶或生气
添加动作:让机器人的手臂或腿部动起来,增加动画效果
添加背景:在机器人后面添加简单的背景,比如房子、树木或太阳
添加文字:在机器人旁边添加文字,比如机器人的名字或问候语
添加装饰:给机器人添加帽子、围巾或其他装饰,增加个性化
你能尝试实现这些功能吗?
好了,今天的「Android机器人绘制」编程就讲到这里啦!希望你们都能画出自己的Android机器人,成为小小艺术家!如果有什么问题,欢迎在评论区留言哦!我们下期再见~拜拜~
喜欢这篇文章的话,记得点赞、收藏、转发给你的小伙伴们哦!我们下期再见!👋

。即使下载了,也要上传,不是特别方便,尤其是不好查找。

关注即可领取,下载不限速,方便快捷。



微信号|scratch-coco