如何用外部文件 presence/content 控制 python 程序行为?
How to control python program behavior with external file presence/content?
我开发了一款可以自动更新的软件,需要外置配置file/files。现在我使用 json 文件来存储用户输入变量,如用户名等。但我不确定应该如何控制程序本身。我的意思是检查程序是否在更新后第一次打开以了解是否应该显示更新说明,已经使用了哪些功能等。现在我正在做这样的事情:
if os.path.exists(control_file_1):
actions_1
if os.path.exists(control_file_2):
some other actions unrelated to actions_1
它独立于文件内容——所以不需要读取文件内容——这很方便。
应该使用什么函数将这些信息存储在一个文件中并有效地读取它们?只是普通的 file.read() 等?看起来代码不太友好。
谢谢
更新:
看起来 ConfigParser 是一种可行的方法。我对吗?或者他们有更好的方法来完成我想要的吗?
鉴于您需要将配置信息存储在文件中。如果您选择将该信息保存在包含 json 记录的文件中,那么如果该文件在内部使用并且更新和读取文件中的记录很容易(将其视为字典)
但是,如果您想要更通用的 config.ini reader,那么您可以使用 ConfigParser class,您可以直接使用它或创建您自己的包装器
class MYConfig_Parser(ConfigParser):
以便您可以在处理条目之前检查构造函数中的内容,例如强制条目是否可用等。
我开发了一款可以自动更新的软件,需要外置配置file/files。现在我使用 json 文件来存储用户输入变量,如用户名等。但我不确定应该如何控制程序本身。我的意思是检查程序是否在更新后第一次打开以了解是否应该显示更新说明,已经使用了哪些功能等。现在我正在做这样的事情:
if os.path.exists(control_file_1):
actions_1
if os.path.exists(control_file_2):
some other actions unrelated to actions_1
它独立于文件内容——所以不需要读取文件内容——这很方便。
应该使用什么函数将这些信息存储在一个文件中并有效地读取它们?只是普通的 file.read() 等?看起来代码不太友好。
谢谢
更新: 看起来 ConfigParser 是一种可行的方法。我对吗?或者他们有更好的方法来完成我想要的吗?
鉴于您需要将配置信息存储在文件中。如果您选择将该信息保存在包含 json 记录的文件中,那么如果该文件在内部使用并且更新和读取文件中的记录很容易(将其视为字典)
但是,如果您想要更通用的 config.ini reader,那么您可以使用 ConfigParser class,您可以直接使用它或创建您自己的包装器
class MYConfig_Parser(ConfigParser):
以便您可以在处理条目之前检查构造函数中的内容,例如强制条目是否可用等。