在少儿编程中使用easygui(7):使用EgStore来存储数据

在前面的各篇内容中,我们了解了如何使用各种类型的对话框来接收用户输入,但接收数据后,一般是需要将数据保存到某个地方,以供后续使用。我们可以使用文件、数据库等来存储数据。但其实在easygui中,也提供了一个EgStore类来保存数据。它提供了三个方法来实现对数据的存储和读取:

store():将数据保存到指定的文件

restore():从文件中读取以前保存的数据

kill():删除存储文件

它其实使用文本文件来保存,当然,它是使用pickle将数据系列化之后保存的,所以数据我们不借助一定的手段是无法用肉眼读取出来的。如果并非什么机密信息,数据量也不大的话,使用EgStore来保存数据也是个不错的方法。

要使用EgStore存储数据,我们可以首先定义一个EgStore的子类,例如:

class User(EgStore):
    def __init__(self,filename):
        EgStore.__init__(self, filename)

然后,就可以使用它来存储数据了。我们可以将需要存储的数据当做User对象的属性,然后调用User对象的store()方法即可:

user = User("store.txt")
user.user_name = "张三"
user.password = "password"
user.store()
print(user)

执行以上代码后,会生成一个store.txt文件,里面存储了user对象的所有属性,包括文件名以及最后保存时间,如果执行了restore操作,还有最后restore的时间:

filename         : store.txt
user_name        : 张三
password         : password
last_time_stored : 2022-03-16 09:24:13.036400

以上代码可以直接在好学好教网站直接访问操作:

少儿编程教学平台 - Python作品:使用easygui EgStore存储数据https://www.cncoding.cn/python/public_143840预告一下,下一篇的教程,我们将结合这几次的内容,做一个注册、登录和验证的小案例,作为这一系列文章的结束。

前面六篇文章在此:

在少儿编程中使用easygui来实现交互(1)——msgbox_cncoding.cn的博客-CSDN博客easygui是一个简单易用的Python图形库。它非常适合用于少儿编程教学,可以让小朋友迅速搭建出可交互的图形界面。本系列文章将详细讲解easygui的使用。https://blog.csdn.net/weixin_44607635/article/details/123525133在少儿编程中使用easygui(2):textbox_cncoding.cn的博客-CSDN博客在少儿编程中,使用easygui的textbox/codebox接收用户多行输入。https://blog.csdn.net/weixin_44607635/article/details/123565505在少儿编程中使用easygui(3):enterbox和multenterbox_cncoding.cn的博客-CSDN博客在上一篇文章中,我们使用textbox接收用户输入多行的文字。如果需要接收用户单行输入,或者接收用户多种类型的单行数据输入,则可以分别使用enterbox和multenterbox。enterbox的函数原型是:enterbox(msg='Enter something.',title=' ',default='',strip=True,image=None,root=None)其中msg和title的含义和前面两个组件的含义一样。第三个参数是输入框中的默认值。strip用于设置是否去除返https://blog.csdn.net/weixin_44607635/article/details/123624213在少儿编程中使用easygui(4):choicebox和multchoicebox_cncoding.cn的博客-CSDN博客如果我们想让用户在有限的一些选项中选择,则可以使用choicebox或者multchoicebox,它们的区别在于choicebox只能选择一个选项,而multchoicebox可以选择多个选项。choicebox的函数原型是:choicebox(msg='Pick an item',title='',choices=[],preselect=0,callback=None,run=True)其中,choices参数用于指定选项值,而preselect用于指定默认选中的选项索引,从0开始;callhttps://blog.csdn.net/weixin_44607635/article/details/123651946在少儿编程中使用easygui(5):ynbox/boolbox/ccbox_cncoding.cn的博客-CSDN博客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=https://blog.csdn.net/weixin_44607635/article/details/123676726在少儿编程中使用easygui(6):buttonbox/indexbox_cncoding.cn的博客-CSDN博客前面所介绍的easygui对话框,除了msgbox外,基本都是可以接收用户输入或者可以让用户进行选择的。如果不需要用户输入,且只有有限的几个选项共用户选择,那么可以用更加直观的两个对话框:buttonbox和indexbox。buttonbox和indexbox都可以自己设置若干个按钮让用户选择,他们的区别主要在于buttonbox返回的是按钮上的文字,而indexbox返回的是按钮的索引。它们的原型如下:buttonbox(msg='',title=' ',choices=('Button[1]',https://blog.csdn.net/weixin_44607635/article/details/123761485

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值