- 博客(11)
- 收藏
- 关注
原创 少儿编程之Python turtle(2):分型树
分型树/分形树是一个很有意思的图形,一般可以用递归的方式实现不同层级的分形树绘制。可以用它来在少儿编程中讲解分型,通过设置不同的分型层次,可以很直观地看到层级的加减对运行速度的影响。是递归的深度,则总的调用次数大约是 2^level。因此,这段代码的时间复杂度是 O(2^level),这是一个指数级时间复杂度。以下就是一个分形树的例子,可以通过修改代码最后的level来改变分型的level层级。要确定递归的时间复杂度,我们需要理解递归是如何分支的。上图中是一个十四层级的分形树,绘制时长比较慢。
2024-03-01 08:54:47
254
1
原创 少儿编程之Python turtle(1)喜羊羊
Python turtle是一个很适合少儿编程的工具,它和Lego中的小海龟以及Scratch一脉相承。从今天开始在这里分享一些有趣的Python turtle的例子,有的适合教学,有的不适合教学只适合展示。因为turtle库比较简单,所以除了代码中的注释,不再对代码进行详细讲解。文末有链接,点击链接可以在“好学好教少儿编程教学平台”上直接运行本代码而无需安装Python。访问好学好教少儿编程教学平台上的在线Python Turtle环境,直接在线运行,无需安装环境。
2024-02-29 13:40:42
479
原创 在少儿编程中使用easygui(8):综合应用
在前面的六篇文章中,我们将绝大部分的easygui组件都介绍了,除了fileopenbox/diropenbox/filesavebox这几个(这几个请读者参考API说明学习),本篇将以一个小的综合案例作为总结,作为这一系列文章的结束。我们要做的是一个非常简单的应用。用户运行程序后,将让用户选择是要登录还是注册。如果选择登录,则弹出对话框让用户输入用户名和密码,如果选择注册,则弹出对话框让用户输入个人信息(简单起见,我们也只让用户输入用户名和密码,读者可以自行增加其他字段)。在注册界面,用户输入用户名和
2022-04-13 11:06:36
239
原创 在少儿编程中使用easygui(7):使用EgStore来存储数据
在前面的各篇内容中,我们了解了如何使用各种类型的对话框来接收用户输入,但接收数据后,一般是需要将数据保存到某个地方,以供后续使用。我们可以使用文件、数据库等来存储数据。但其实在easygui中,也提供了一个EgStore类来保存数据。它提供了三个方法来实现对数据的存储和读取:store():将数据保存到指定的文件restore():从文件中读取以前保存的数据kill():删除存储文件它其实使用文本文件来保存,当然,它是使用pickle将数据系列化之后保存的,所以数据我们不借助一定的手段是无法
2022-03-29 11:42:03
838
原创 在少儿编程中使用easygui(6):buttonbox/indexbox
前面所介绍的easygui对话框,除了msgbox外,基本都是可以接收用户输入或者可以让用户进行选择的。如果不需要用户输入,且只有有限的几个选项共用户选择,那么可以用更加直观的两个对话框:buttonbox和indexbox。buttonbox和indexbox都可以自己设置若干个按钮让用户选择,他们的区别主要在于buttonbox返回的是按钮上的文字,而indexbox返回的是按钮的索引。它们的原型如下:buttonbox(msg='',title=' ',choices=('Button[1]',
2022-03-26 19:17:15
592
原创 在少儿编程中使用easygui(5):ynbox/boolbox/ccbox
ynbox/boolbox和ccbox这三个类型的对话框,其实作用都差不多,就是选择Yes或者No,然后程序可以根据选择的情况进行不同的处理。它们三者的原型如下:ynbox(msg='Shall I continue?',title=' ',choices=('[<F1>]Yes','[<F2>]No'),image=None,default_choice='[<F1>]Yes',cancel_choice='[<F2>]No')ccbox(msg=
2022-03-23 08:44:03
633
原创 在少儿编程中使用easygui(4):choicebox和multchoicebox
如果我们想让用户在有限的一些选项中选择,则可以使用choicebox或者multchoicebox,它们的区别在于choicebox只能选择一个选项,而multchoicebox可以选择多个选项。choicebox的函数原型是:choicebox(msg='Pick an item',title='',choices=[],preselect=0,callback=None,run=True)其中,choices参数用于指定选项值,而preselect用于指定默认选中的选项索引,从0开始;call
2022-03-22 09:24:21
710
原创 在少儿编程中使用easygui(3):enterbox和multenterbox
在上一篇文章中,我们使用textbox接收用户输入多行的文字。如果需要接收用户单行输入,或者接收用户多种类型的单行数据输入,则可以分别使用enterbox和multenterbox。enterbox的函数原型是:enterbox(msg='Enter something.',title=' ',default='',strip=True,image=None,root=None)其中msg和title的含义和前面两个组件的含义一样。第三个参数是输入框中的默认值。strip用于设置是否去除返
2022-03-21 08:30:00
1861
2
原创 在少儿编程中使用easygui来实现交互(1)——msgbox
easygui是一个简单易用的Python图形库。它非常适合用于少儿编程教学,可以让小朋友迅速搭建出可交互的图形界面。本系列文章将详细讲解easygui的使用。
2022-03-16 14:12:42
1274
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人