我正在寻找一种在Python中存储设置的智能方法。我想要做的就是设置一些参数并在代码中使用它。
我发现了这个Best practices for storing settings和Storing application settings in C#,但我不认为这有助于我解决问题。我想存储一些参数,例如年龄重量和名称等,并轻松访问它们。
有最佳做法吗?
答案 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)