在Python中存储应用程序设置

时间:2015-08-30 07:15:36

标签: python parameters settings

我正在寻找一种在Python中存储设置的智能方法。我想要做的就是设置一些参数并在代码中使用它。

我发现了这个Best practices for storing settingsStoring application settings in C#,但我不认为这有助于我解决问题。我想存储一些参数,例如年龄重量和名称等,并轻松访问它们。

有最佳做法吗?

3 个答案:

答案 0 :(得分:1)

如果你喜欢windows .ini文件格式,Python会附带ConfigParser(python3 configparser)来解释它们。该文档使这看起来比它更复杂 - 跳到最后只是一个简单的例子。

您还可以使用(滥用?)import来加载settings.py文件。

将参数放在一个类中是好的。您可以添加加载和保存方法以从配置文件(如果存在)读取/覆盖默认值,并使用当前值创建/更新配置文件。

答案 1 :(得分:0)

我认为一种方法是将参数存储在一个类中。

喜欢这样:

class Settings:

    # default settings
    name = 'John'
    surname = 'Doe'
    age = 45
    gender = 'Male'

另一种方法是将这些变量存储在配置文件中,然后从中读取。但我发现前者更容易,因为您可以更轻松地访问代码。

喜欢这样:

from settings import *
settings = Settings()
username = settings.name

答案 2 :(得分:0)

Pi它, 您可以将任何python数据结构存储在文件中,以后再加载

import pickle
data = dict(user='Homer', age=45, brain=None)

#save data to file
with open('setting.cfg', 'wb') as f: 
            pickle.dump(data, f)

#load data from file
with open('setting.cfg', 'rb') as f: 
            data = pickle.load(f)