具有保存功能的Python程序

具有保存功能的Python程序,python,save,Python,Save,我正在制作一个程序,允许用户创建一个特定的可修改列表。目标是允许用户创建一个时间表,以后可以加载和修改该时间表。是否有可能以某种方式保存用户所做的操作,以便他们可以稍后打开程序并继续他们停止的操作 这类似于在字处理器中生成文档、保存文档、关闭字处理器、稍后返回并打开文档以继续修改它的方式 我基本上希望保存程序的当前会话或实例,所有变量以及这些变量都存储在程序未运行时的文件中。然后,在下次启动程序并在程序中选择和打开特定文件时,可以访问这些文件 这可能吗?如果是这样,怎么做?这称为数据库。 我建议

我正在制作一个程序,允许用户创建一个特定的可修改列表。目标是允许用户创建一个时间表,以后可以加载和修改该时间表。是否有可能以某种方式保存用户所做的操作,以便他们可以稍后打开程序并继续他们停止的操作

这类似于在字处理器中生成文档、保存文档、关闭字处理器、稍后返回并打开文档以继续修改它的方式

我基本上希望保存程序的当前会话或实例,所有变量以及这些变量都存储在程序未运行时的文件中。然后,在下次启动程序并在程序中选择和打开特定文件时,可以访问这些文件

这可能吗?如果是这样,怎么做?

这称为数据库。 我建议使用SQlite,它是一个基于SQL的关系数据库系统。是一个非常简单且动态的系统,并且与编程语言Python具有很强的连接性

我建议先阅读SQLite,然后再阅读如何将SQLite数据库连接到python

您可以创建表来存储信息,然后创建适当的UI,让用户能够再次将数据加载到程序中

范例 我实际上并不理解您的程序想法,但让我们来考虑一个简单的应用程序示例,它使用户能够创建约会

用户可以设置约会的时间、日期和地点以及一些简短的描述

正如您所看到的,我们可以在数据库中使用字段列进行表预约: id、日期、时间、地点和描述

因此,现在您可以使用查询:

SELECT * FROM Appointment;
这将返回上表中的两个数据元组,因此您可以在UI中按照自己的意愿表示数据


另一种选择是使用平面文件,但使用数据库将更容易、更动态、更无错误。

我认为数据库在这里是过分的,因为它们通常都是这样。这个程序听起来像是要存储一些一到两种类型的对象。您应该将json转储到一个平面文件中;定义一个函数,该函数接受所有状态对象和一个文件对象,并将对象作为json写入文件,然后编写另一个函数从文件中解析对象。砰,你完了

反勾号用于代码、命令等,而不是任何技术术语。平面文件可以称为平面文件,格式就是这样——它们是英语术语,而不是代码。
SELECT * FROM Appointment;