<p>对允许的键进行<code>set</code>。然后创建一个<code>set</code>的已用键。从使用过的键中减去alllowed键。你知道吗</p>
<pre><code>In [1]: import configparser
In [2]: config = configparser.ConfigParser()
Out[2]: <configparser.ConfigParser at 0x80a0624d0>
In [3]: config.read_string("""[DEFAULT]
...: param1 = 1
...: param2 = 2
...: param3 = 3
...: param4 = 4""")
In [4]: allowed_keys = {'param1', 'param2'}
Out[4]: {'param1', 'param2'}
In [5]: usedkeys = set(config['DEFAULT'].keys())
Out[5]: {'param1', 'param2', 'param3', 'param4'}
In [6]: illegal_keys = usedkeys - allowed_keys
Out[6]: {'param3', 'param4'}
</code></pre>
<p>使用相同的技术,您可以拥有允许的节名称,以及只允许在某些节中使用的参数。你知道吗</p>
<p>例如,您可以将<code>allowed_keys</code>变成<code>dict</code>的<code>set</code>:</p>
<pre><code>In [7]: allowed_keys = {'DEFAULT': {'param1', 'param2'}, 'section1': {'param3', 'param4'}}
Out[7]: {'DEFAULT': {'param1', 'param2'}, 'section1': {'param3', 'param4'}}
</code></pre>
<p>因此,您可以首先查看节名称,然后查看允许节的允许参数名称。你知道吗</p>