首页 > 解决方案 > 配置文本文件中没有值的“DEFAULT”部分

问题描述

为什么有一个名为“DEFAULT”的部分但在我的配置文本文件中没有值?

我有一个包含我的配置的文本文件“policy.txt”。所以我在 Python 中运行了一个简单的 configparser 代码,如下所示:

>>> from configparser import ConfigParser
>>> config = ConfigParser()
>>> config.read('policy.txt')
['policy.txt']
>>> for key in config:
...     print(key)
...

您看到的数字(1 到 5)是我的 policy.txt 文件中的部分名称。这是结果:

DEFAULT
1
2
3
4
5

所以我想知道“默认”部分中存储了什么。然后我运行了这个代码段:

>>> for key in config['DEFAULT']:
...     print(key)
...
...
>>>

但似乎该部分没有存储任何内容。那么为什么它在我的 policy.txt 文件中呢?

任何有用的想法表示赞赏。

标签: pythondefaultconfigparser

解决方案


DEFAULT是始终存在于ConfigParser实例中的“特殊”部分。它存储备用值,当另一个部分中的值丢失时用作默认值。

如果要遍历配置中的部分并排除默认值,请使用sections()

>>> for key in config.sections():
...     print(key)
1
2
3
4
5

推荐阅读