配置文本文件中没有值的“ 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

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

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

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

任何有帮助的想法都会受到赞赏。

解决方法

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

如果要遍历配置中的各个部分并希望排除默认设置,请使用sections()

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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...