使用python的带有字典的配置文件

新手上路,请多包涵

所以我试图在配置文件中使用字典来将报告名称存储到 API 调用中。所以像这样:

 report = {'/report1': '/https://apicall...', '/report2': '/https://apicall...'}

我需要将多个 reports:apicalls 存储到一个配置值。我正在使用 ConfigObj。我已经阅读了 文档文档,它说我应该能够做到。我的代码看起来像这样:

 from configobj import ConfigObj
config = ConfigObj('settings.ini', unrepr=True)
for x in config['report']:
    # do something...
    print x

但是,当它遇到 config= 时,它会抛出一个引发错误。我有点迷路了。我什至复制并粘贴了他们的例子和同样的东西,“引发错误”。我正在使用 python27 并安装了 configobj 库。

原文由 Jesse Dugger 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 578
1 个回答

如果您没有义务使用 INI 文件,您可以考虑使用另一种更适合处理 dict 类对象的文件格式。查看您提供的示例文件,您可以使用 JSON 文件,Python 有一个 内置 模块来处理它。

例子:

JSON 文件“settings.json”:

 {"report": {"/report1": "/https://apicall...", "/report2": "/https://apicall..."}}

蟒蛇代码:

 import json

with open("settings.json") as jsonfile:
    # `json.loads` parses a string in json format
    reports_dict = json.load(jsonfile)
    for report in reports_dict['report']:
        # Will print the dictionary keys
        # '/report1', '/report2'
        print report

原文由 Mary Marchini 发布,翻译遵循 CC BY-SA 3.0 许可协议

推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏