尧图精选

编程猫海龟编辑器:积木转Python与海龟绘图实战入门

🕒 发布时间:2026/10/1 7:16:38 📁 来源:尧图网络
1. 拆开看编程猫海龟编辑器到底是个什么定位的工具我第一次碰到编程猫海龟编辑器是帮亲戚家一个刚上初一的孩子调一段画星星的代码。那台电脑上装了三四个所谓的编程启蒙软件唯独这个他愿意一直打开。后来我自己也拿它做了几个小工具甚至用它给几个刚入门的朋友讲过 Python 基础慢慢就摸清了这东西的脾气。简单说它是一个把积木拖拽和手写 Python 代码揉在同一个窗口里的编程环境底层跑的是真正的 Python 解释器不是那种封闭的、只能拼图的玩具引擎。你在里面拖的每一块积木都能一键翻转成对应的 Python 代码反过来你手写的代码也能被识别成积木结构两边双向联动。这个特性决定了它的适用人群其实比想象中要宽。零基础的孩子和成年人可以先用积木把逻辑跑通建立顺序、循环、条件、变量这些最朴素的编程直觉不至于一上来被缩进和冒号劝退有了一点基础、想过渡到纯代码的人可以关掉积木面板直接写.py文件用的是标准 Python 语法不存在学了就废的问题老师和家长则可以用它做课堂演示把抽象的控制流可视化出来。它解决的问题很实在——把编程入门阶段的挫败感往下压同时又没有把天花板锁死。很多人对这类工具的误解是只能画个海龟。其实海龟绘图只是它最出名的一个模块内置了turtle库而已。它同样支持标准库random、math、time也能通过包管理装第三方库。我带过的一个学生用它写了个随机点名器还顺手做了个把班级成绩画成柱状图的脚本。所以下面我讲的这些既是怎么用也是怎么把它当成一个正经的 Python 学习环境来用。1.1 为什么海龟绘图是新手最该先啃的一块骨头海龟绘图Turtle Graphics这个概念其实很老早在上世纪六十年代就被设计出来用于教学。它的核心思想特别朴素把一支笔绑在一只海龟身上海龟往前走就画线抬起来走就不画线。你不用理解坐标系、不用理解画布刷新机制只要会下前进 100 步右转 90 度这种命令屏幕上就会立刻出现结果。这种输入命令、立刻看到反馈的闭环对建立编程信心太重要了。跟直接写print(hello)比起来海龟绘图的好处是反馈是图形化的、可累积的。打印一句话屏幕滚一下就过去了但画一个五角星它会一直待在那儿你能直观看到角度算错了会歪成什么样。这种错误可视化是纯文字输出给不了的。我在教循环的时候从来不先讲for的语法而是先让学生画一个正方形——画完他们自己就会嫌写四遍 forward 太蠢这时候再引出for i in range(4)效果比干讲强十倍。再一个海龟绘图天然把数学和编程绑在一起。正多边形的外角是360/n五角星的转角是 144 度螺旋线用递增的步长配合固定转角……这些不是死记硬背的参数而是可以自己推、自己试出来的规律。对刚接触编程的人来说能在屏幕上看到数学公式变成图形是很有成就感的一件事。这也是为什么很多教材都把海龟绘图放在第一章。1.2 它和纯命令行 Python、和其他图形化工具的区别在哪如果把工具谱系摆开大致是这样纯命令行的 Python 门槛高、反馈弱但最接近真实开发环境纯积木类工具比如某些早期图形化平台门槛低但一旦迁移到文字代码就断层而海龟编辑器站的位置是中间那座桥。它不是教完就扔的过渡品因为它的代码端就是标准 Python你学的东西可以直接搬到任何其他编辑器里。我对比过几种常见方案顺手整理了个表方便你判断要不要选它对比维度海龟编辑器纯命令行 Python纯积木平台上手难度低可先用积木高需先配环境极低代码迁移性高代码是标准 Python高低语法自成一派图形反馈内置 turtle开箱即用需自己装库、配窗口有但形式有限调试提示中文报错 积木高亮原生英文报错提示较弱适合阶段入门到进阶过渡进阶及以上纯启蒙从表里能看出来它的核心价值是**迁移性和低门槛同时成立**。这一点我在实际用的时候体会很深同一个窗口里左边拖积木、右边看代码拖完点一下转代码孩子能亲眼看到哦我拖的那块重复 4 次原来就是for i in range(4)。这种一一对应的映射是靠讲是讲不出来的必须让他自己点几次。提示不要一上来就把积木面板关掉。哪怕你已经会写代码先用积木搭一遍结构再切到代码模式对照能帮你快速熟悉它在积木语言和Python 语句之间的映射规则后面手写代码时会顺畅很多。2. 上手之前的准备下载、安装与首次启动这一节说点实操前的杂事但恰恰是这些杂事最容易劝退人。我见过太多情况是——软件下载了、装上了、打开了然后卡在为什么我的窗口和教程里长得不一样。所以先把环境这关捋顺。2.1 版本选择和安装时容易踩的坑海龟编辑器有网页版和本地客户端两条路。网页版的好处是不装东西、打开浏览器就能用适合临时试一下或者机房教学但它对本地文件、第三方库的支持有限网络一抖就难受。如果你打算长期用我还是建议装本地客户端功能够全离线也能跑。下载渠道就走官方那个入口别去第三方下载站那些地方捆广告是常态。安装的时候有几个点值得留意。第一是安装路径尽量别带中文和空格。虽然现在的版本大多能处理中文路径但第三方库的安装脚本有时候会很娇气一个中文目录名就能让pip报一堆莫名其妙的错。我一般建议直接装到默认路径或者手动改成D:\CodeMao这种纯英文短路径。第二是别把它和系统里其他的 Python 搞混。海龟编辑器自带了一个 Python 运行时它安装的第三方库默认进的是它自己的site-packages不是系统 Python 的。你在系统命令行里pip install装的库它可能识别不到反之亦然。搞清楚这一点能省掉后面一大堆明明装了却导入失败的疑问。如果你电脑上已经有一堆 Python 环境装完之后可以在它的设置里看一眼解释器路径指向哪里心里有个数。真的遇到库冲突大不了把它自带的运行时单独管起来别和别的环境互相污染。2.2 首次打开后值得先改的几个设置打开软件之后别急着写代码先把几个设置调好后面会舒服很多。首先是代码字体和字号。默认字号偏小长时间盯着眼睛累我一般调到 14 到 16 之间字体选一个等宽字体比如 Consolas 或更纱黑体因为等宽字体下缩进对齐看得清清楚楚Python 对缩进极其敏感这个设置不是审美问题是效率问题。其次是自动保存如果版本里带这个选项就打开青少年写代码最容易忘记保存画了半天的作品一崩全没那打击太大了。第三是把工作目录设成一个固定的、好找的文件夹比如D:\Python练习所有新建的文件都往这里放别让它散落在临时目录里。还有一点很多人忽略开启行号显示。报错信息里通常会告诉你第几行出错如果编辑器不显示行号你就得自己数数着数着就晕了。这个功能一般在视图菜单里勾上就行。注意如果你是在学校的公用电脑上装注意别勾选开机自启之类的项也不要随意改动系统的环境变量。教室环境往往有还原卡改多了下次开机就恢复不了白忙一场。3. 界面拆解三个区域和一套双向转换机制软件打开之后界面乍看有点东西多但拆开来看其实就三块理解了这三块整个工具就通透了。3.1 左中右三区分别负责什么中间是编辑区你写代码或者拖积木都在这里是主战场。右侧或下方是运行输出区/舞台区代码跑出来的结果、海龟画的图、控制台打印的文字都显示在这儿。左侧是积木库或者文件区积木模式下它是一排排分类好的积木块运动、外观、控制、变量、运算……代码模式下它可能变成文件树或函数列表。关键在编辑区顶部的那个模式切换开关。它有几种状态纯积木模式、纯代码模式、积木加代码混合模式。混合模式是最好用的——左边拖积木右边实时显示生成的代码。我强烈建议新手一直用混合模式直到你能不看着积木就写出对应代码为止。这个看着映射关系学的过程比死记语法有效得多。运行按钮通常是那个绿色的三角形点一下就跑。养成习惯改一行就点一次运行别攒一大坨再跑不然报错了你都不知道是哪句惹的祸。3.2 积木转代码背后的逻辑其实很简单很多人好奇积木和代码是怎么互通的。原理说穿了不复杂每一块积木本质上是一个代码模板它携带了固定的语法骨架和几个可填的槽位。比如重复 10 次这块积木模板就是for i in range(10):再加上一个缩进块你把里面的积木拖进去就相当于往缩进块的槽位里填代码。拖拽的过程其实就是在做语法树的拼接。这解释了几个常见现象。第一为什么积木模式下不可能出现缩进错误——因为缩进是积木的块结构天然决定的你没法把一块积木拖到位置错误的地方。第二为什么从积木切到代码之后你能直接编辑代码但不能乱改结构——你删掉一个for的冒号积木视图就崩了因为语法树对不上了。第三为什么有些积木生成的代码看着有点多余比如多出来一个pass那是因为那块积木本身需要一个语句占位空着就是语法错误。理解了这层你就能主动利用它学习先自己写代码再切回积木模式看它被解析成什么样。如果切过去发现积木是乱的说明你的代码结构有问题这是个很好的自检手段。3.3 代码模式下必须记住的三条铁律一旦你主要用代码模式这三条是硬规矩违反了必报错而且是新手最常栽的跟头。第一冒号不能丢。if、for、while、def、else这些语句末尾的那一列冒号是 Python 的语法标记少一个就SyntaxError。我统计过初学者的报错里差不多三成是丢冒号。第二缩进必须一致。Python 用缩进表示代码块层级。同一个块里缩进量必须完全一样。你可以用 4 个空格也可以用 Tab但绝对不能在同一个文件里混用。看着屏幕上都往右缩了实际一个是空格一个是制表符Python 就翻脸。海龟编辑器的代码区一般会自己处理但你自己写的部分要注意。第三变量名别乱来。不能用数字开头不能用中文标点不能和内置关键字for、if、list、print撞名。尤其是把print当成变量名赋值后面再想打印就找不到函数了这个坑很多人踩。提示写完一段代码先在脑子里念一遍——这句话让海龟做什么下一句呢如果念不通大概率结构就错了先别运行改清楚了再跑。4. 第一个实操从零画出正方形、正多边形和五角星理论讲再多不如动手。这一节我带你从最基础的画线开始一步步推到画正多边形最后到五角星。跟着做一遍海龟绘图的核心就掌握了。4.1 海龟绘图的五个核心指令海龟绘图看着指令多真正撑起八成场景的就五个t.forward(距离)前进简写t.fd()会留下轨迹。t.backward(距离)后退简写t.bk()。t.right(角度)右转简写t.rt()注意是转方向不改变位置。t.left(角度)左转简写t.lt()。t.penup()/t.pendown()抬笔和落笔控制走的时候画不画线。再配上t.goto(x, y)直接跳到坐标点、t.circle(半径)画圆、t.speed(速度)调速度、t.color(颜色)换颜色基本上就够用了。角度是这五个里面最容易搞错的——t.right(90)是把海龟的朝向顺时针转 90 度海龟接下来往新方向走而不是跳到哪里去。这个朝向的概念是海龟绘图和普通画图最大的区别。4.2 完整代码和参数是怎么算出来的先看画正方形的代码import turtlet turtle.Turtle() t.speed(3)for i in range(4): t.forward(100) t.right(90)turtle.done()这段代码跑起来就是一个边长 100 的正方形。为什么是range(4)因为正方形四条边。为什么是right(90)因为走完一条边要转 90 度才能朝向下一条边的方向。四个 90 度加起来正好 360 度回到起点闭合。这个转角度数 × 边数 360的关系就是画一切正多边形的钥匙。把 4 换成 n90 换成360/n你就得到了通用的正多边形代码import turtlen int(input(你想画几边形))t turtle.Turtle() t.speed(3)for i in range(n): t.forward(100) t.right(360 / n)turtle.done()试一下n 输入 6就是正六边形每个外角 60 度n 输入 3就是等边三角形n 输入 36就画出一个近似圆形的三十六边形。参数不是背下来的是算出来的这一点一定要让孩子/自己亲手推一遍。五角星稍微绕一点。五角星的每个尖角是 36 度但海龟在这里转的不是内角而是转角外角。画五角星时海龟每次转 144 度。为什么是 144因为一笔画五角星海龟在五个顶点上各转一次五次转完总转向是 720 度两圈720 ÷ 5 144。代码就是import turtlet turtle.Turtle() t.speed(3) t.color(orange) t.pensize(3)for i in range(5): t.forward(150) t.right(144)turtle.done()这里我还加了t.pensize(3)把线条加粗、t.color(orange)换成橙色视觉上好看不少。如果你想填充颜色可以在开始画之前t.begin_fill()画完之后t.end_fill()中间的图形就会被填上当前颜色。4.3 用循环变量做渐变色和螺旋线学会循环之后就忍不住想玩花样。我最喜欢演示的一个效果是螺旋线让海龟每走一步就转一点点角度同时步长缓慢增加就会绕出一个漂亮的螺旋。import turtlet turtle.Turtle() t.speed(0)for i in range(120): t.forward(i * 2) t.right(59)turtle.done()t.speed(0)是最快速度不设这个120 步会画得很慢等得人心焦。i * 2让步长随着循环次数增长right(59)这个看起来不讲道理的角度反而能画出很惊艳的花形图案——转角的数值稍微变一点图案就完全不一样。我常让学生自己改这个数字从 1 试到 180看能变出多少种花样。这个调参看变化的过程其实就是在做最朴素的实验。如果要给螺旋加渐变颜色可以用一个调色板列表循环取值import turtlet turtle.Turtle() t.speed(0) colors [red, orange, yellow, green, blue, purple]for i in range(120): t.color(colors[i % len(colors)]) t.forward(i * 2) t.right(59)turtle.done()i % len(colors)这个取余运算是关键它让颜色索引在 0 到 5 之间循环用完了从头再来。取余这个操作在编程里到处都是顺便就学会了。心得新手画图卡住九成是以为right()是位移。你可以这样记forward管走right/left管转头goto管瞬移。三条指令各司其职别混着理解。5. 用海龟编辑器搞定 99 乘法表两种玩法一步到位99乘法表海龟编辑器这段时间被搜得挺凶我看了一下需求基本分两类一类是想让孩子用编程把乘法表算出来练循环嵌套另一类是想要一个图形化、能贴出来看的乘法表而不是冷冰冰的一屏文字。这两种我都做而且做法差别不小下面一个个说清楚。5.1 玩法一控制台文字版三行核心代码先看最经典的文字版。核心逻辑是两层循环外层控制行数从 1 到 9内层控制每行有几个算式从 1 到当前行号。for i in range(1, 10): for j in range(1, i 1): print(f{j}×{i}{i * j}, end\t) print()就这三行加上外面两个变量就能输出完整乘法表。逐句拆一下for i in range(1, 10)range的右边界是不包含的所以实际是 1 到 9正好九行。for j in range(1, i 1)内层循环的范围随外层变化第 1 行只有 1 列第 9 行有 9 列。这是乘法表阶梯形状的来源。print(..., end\t)里的end\t是关键默认print会换行改成制表符之后同一行的算式就连着排下去了\t会按列对齐。最后那句单独的print()负责在每行结束后换行。有两点要提醒。一是乘号的顺序我这里写的是j×i输出的第一列是1×1、1×2……这一列乘数不变。如果写成i×j第一行会变成1×1、1×2...不是阶梯的形状。这是个小细节但决定了乘法表是不是好看的标准形态。二是用全角还是半角乘号。用×更符合中文习惯用*更接近代码。只是想看结果的话用哪个都行但要发给孩子看×更友好。5.2 玩法二海龟绘图版把乘法表画在画布上文字版够用但如果你想要一个能截图、能排版、能当作装饰的版本就得请海龟出场了。思路是不用print改用海龟的write()方法在画布上写文字同时用goto()控制每一行、每一列的位置。import turtlet turtle.Turtle() t.hideturtle() # 藏起海龟图标画面更干净 t.speed(0) # 最快速度 t.penup() # 抬笔移动时不画线start_x -220 # 第一列的起始横坐标 start_y 170 # 第一行的起始纵坐标 col_gap 85 # 列间距 row_gap 38 # 行间距for i in range(1, 10): y start_y - (i - 1) * row_gap for j in range(1, i 1): x start_x (j - 1) * col_gap t.goto(x, y) t.write(f{j}×{i}{i * j}, font(Microsoft YaHei, 12, normal))turtle.done()这段代码的坐标是算出来的不是瞎试的。屏幕的原点(0,0)在正中间横坐标往右为正纵坐标往上是正。我把第一行放在y 170屏幕偏上方每往下走一行减 38走到第 9 行时y 170 - 8*38 -134整个表格刚好竖向居中。列方向从x -220开始每列加 85第 9 列到-220 8*85 460……等一下这个值超出常见画布宽度默认大约 480会跑到屏幕外去。这就是实操里最容易翻车的地方。列距和起始位置要配套。如果你的画布宽度是 960海龟默认窗口宽度一般在 960 左右坐标范围大致是 -480 到 480那九列要排下每列至少需要960 / 9 ≈ 106的横向空间而每个算式如9×981用 12 号字大约占 70 到 80 像素所以col_gap取 85 是够的但起始位置得往左挪让整体居中。中心点应该大致是-(9-1) * 85 / 2 ≈ -340。所以我实际用的起始横坐标是-340而不是-220。改过来之后就是start_x -340 start_y 170这样九列从 -340 一直排到 -340 8*85 340左右对称整个表格正正好居中。这个先算总宽度、再定起点的思路是所有居中排版问题通用的解法不只是画乘法表画柱状图、画文字说明都靠它。5.3 排版对齐和中文字体的那些坑海龟绘图里的write()方法第三个参数传的是字体元组格式是(字体名, 字号, 样式)。样式可以是normal、bold、italic。这里有个坑字体名必须是你系统里真实存在的。写Microsoft YaHei在 Windows 上没问题写成微软雅黑有时候也能识别但换一台电脑可能就变成一排方块。跨平台稳妥起见可以用Arial或SimHei这类通用性更强的名字。如果目标是发到别的机器上给其他人打开最好干脆用纯数字和符号避开中文。另一个坑是对齐方式。write()默认是左对齐文字从你goto的那个点开始往右写。因为每一列左边有长有短1×11和9×981长度不同左对齐看着会有点参差。想要整齐可以用align参数指定center或right让文字以定位点为中心对齐。我一般用aligncenter配合固定的列中心坐标出来的效果像表格一样规矩。还有一点别在循环里反复改变海龟的朝向。海龟的朝向会影响……其实不会影响write的文字方向除非你专门设置了但如果你一会儿画线一会儿写字的容易出意外。养成习惯写字之前统一penup()写完要画线再pendown()。注意海龟绘图窗口一旦关掉绘制内容就没了。想保存图片可以用 Windows 系统自带的截图工具截整个窗口或者在海龟窗口里按保存键导出为图片。要自动化的可以用t.getscreen().getcanvas().postscript()导出矢量格式但那个偏进阶初学阶段截图足够用。6. 常见报错和排查技巧速查这一节是我攒了几年的报错本都是实际带人时候反复遇到的。新手看到报错第一反应是慌其实报错信息本身就是最好的教科书学会读它问题就解决一半了。6.1 报错信息逐条对照表下面这张表建议直接存下来遇到自己对着找报错关键词大概意思常见原因怎么改SyntaxError: invalid syntax语法不认识丢了冒号、括号不配对、中文标点检查报错行的上一行和本行的符号IndentationError缩进错空格和 Tab 混用、层级不对齐统一用 4 个空格NameError: name xxx is not defined名字没定义变量拼错、用之前没赋值检查拼写确认变量先赋值后使用ModuleNotFoundError找不到模块第三方库没装、装错环境在该编辑器的包管理里重新安装AttributeError对象没这个属性/方法拼错方法名、对象类型不对确认方法名比如是forward不是fowardTypeError类型不对字符串和数字做运算用int()或str()转换图形一闪而过窗口关太快没加结束语句末尾加turtle.done()读报错的正确姿势先看最后一行真正的错误类型再看报错信息里指出的行号去那一行以及它的上一行找问题。Python 报错经常是上一行少了个符号下一行才炸所以看一行不够。6.2 三个高频问题的详细排查过程问题一海龟窗口一闪就没了。这在纯命令行 Python 里最常见原因是程序跑完直接退出窗口跟着关了。解决办法是在最后加turtle.done()或turtle.mainloop()它会保持窗口打开直到你手动关闭。海龟编辑器里默认会帮你挂住窗口但如果你自己写脚本用系统 Python 跑这个必加。问题二画出来的图形歪歪扭扭。八成是转角算错了。诊断方法很简单把角度的计算改成变量打印出来。比如正 n 边形的t.right(360/n)先把360/n打出来看看是不是你预期的值。如果 n 是 5、你打印出 72那就对了如果打印出个负数或者特别小的数说明变量 n 有问题。打印中间变量是排查一切逻辑错误的万能招比盯着代码硬看有效得多。问题三改了代码但结果没变。这种情况十有八九是没保存或者运行的是另一个文件。海龟编辑器一般会在运行前提示保存但有些版本需要在设置里手动开启保存后运行。还有一种可能是上一次的海龟窗口还开着新的没顶上来你以为没变其实是两块窗口叠在一起了。养成关掉旧窗口、再跑新的的习惯。6.3 提速和防卡的几个实用技巧海龟画复杂图案会越画越慢这是它逐帧重绘的机制决定的不是电脑不行。提速有两个办法。一是设置t.speed(0)这是最快档。二是更狠的关掉自动刷新。turtle.tracer(0) # 关闭自动刷新... 中间画一大堆 ...turtle.update() # 全部画完再一次性刷新tracer(0)之后海龟画的过程你不会看到所有动作在后台记录下来等update()一调用画面唰地一下全出来。画几百条线的复杂图案时这个技巧能把等待时间从几十秒压到一秒内。代价是你没法看到绘制过程动态效果就没了所以做演示的时候别用做成品的时候用。还有一个防卡的做法别用无限循环。有些人为了做动画写while True如果不加退出条件程序就死在那儿了窗口点都点不动。要做持续动画也得在循环里加个判断或者用海龟自带的ontimer定时器机制。心得报错不可怕可怕的是不读报错信息就瞎改。我见过太多人一看到红字就疯狂删代码删到最后连原本对的地方也改坏了。正确的流程是——读报错、定位行、打印中间值、小步验证。这四步走下来九成问题自己就解了。7. 进阶玩法把海龟编辑器用在真实的小项目上学会基础绘图之后如果只停留在画图形很快就腻了。真正让人有动力继续学的是把它用到能解决实际问题的场景里。这一节分享几个我自己做过的方向都是几百行以内能搞定、但成就感很足的。7.1 把数学公式变成看得见的图形海龟绘图最棒的一点是它能把抽象的数学函数画出来。比如你想看看正弦函数的形状不用去背图像自己画一遍就记住了import turtle import matht turtle.Turtle() t.speed(0) t.penup()for x in range(-300, 301): y 80 * math.sin(x / 40) if x -300: t.pendown() t.goto(x, y)turtle.done()这段代码扫过从 -300 到 300 的每一个横坐标算出对应的正弦值再乘 80 放大然后把点连起来。跑出来就是一条正弦曲线。参数调整的乐趣全在细节里把 80 改大波峰变高把 40 改大波峰变宽把sin换成cos曲线左右平移。你可以让海龟同时画两条不同颜色的曲线做对比直观感受两者的关系。这比看课本上的图强太多了。更进一步还能用它画函数图像的动态变化用ontimer每隔几十毫秒重画一次让参数随时间变化屏幕上就是曲线在呼吸。这种把数学、编程、动画揉在一起的项目特别能吸引学生的注意力。7.2 结合随机数做个小游戏的原型海龟还能做简单的游戏原型。比如一个猜数字方位的游戏海龟随机藏在一个坐标点玩家通过输入方向和步数去接近它。核心用的是random库和键盘/输入交互。import turtle import randomtarget_x random.randint(-200, 200) target_y random.randint(-200, 200)t turtle.Turtle() t.speed(3) t.shape(turtle)while True: steps int(input(走多少步)) angle int(input(转多少度)) t.right(angle) t.forward(steps)dx abs(t.xcor() - target_x) dy abs(t.ycor() - target_y) if dx 20 and dy 20: print(找到啦) break elif dx dy 50: print(很近了再调整一下) else: print(还远着呢继续找)turtle.done()这个原型展示了一个完整的游戏循环接收输入、更新状态、判断胜负、给出反馈。把这套逻辑摸清了后面学任何交互式程序都是这个框架。t.xcor()和t.ycor()分别取海龟当前的横纵坐标turtle.shape(turtle)把光标换成海龟的图标看着更生动。7.3 关于进阶学习路线的个人建议从海龟绘图往后路怎么走我的一般建议是先把循环、条件、函数这三样用熟再碰列表和字典最后才去学面向对象。这个顺序别跳。海龟绘图正好能把这几个概念串起来——用函数把画正方形的代码封装成draw_square(size)用列表管理一组颜色用条件判断做碰撞检测。每一步都是在真实的绘图需求里练出来的不是干巴巴地背语法。如果你带的是孩子我的经验是每学一个新概念就做一个能给别人看的小作品。画个生日蛋糕、做个会动的小猫、写个随机点名器作品有了观众学习动力就有了。工具本身好不好是次要的重要的是用它做出了什么。海龟编辑器最大的价值就在于它降低了做出东西的门槛让人不至于倒在配置环境和理解语法的路上。我自己用了这么久最喜欢它的还是那个双模式。刚开始学编程那阵子我在积木和代码之间来回切看着自己拖出来的结构变成一行行代码那种原来如此的感觉是支撑我一路学下去的原始动力。如果你也在带孩子或者自己入门不妨就从画一个歪歪扭扭的正方形开始别急着追求漂亮先让程序跑起来。跑起来了后面的路自然就宽了。
上一篇/下一篇内容由系统自动关联 返回资讯列表 →