擅长:python、mysql、java
<p>如何阻止某人添加新密钥完全取决于某人尝试添加新密钥的原因。作为comments状态,大多数修改键的dictionary方法不会经过<code>__setitem__</code>,因此<code>.update()</code>调用将添加新键。</p>
<p>如果您只希望有人使用<code>d[new_key] = v</code>,那么您的<code>__setitem__</code>就可以了。如果他们可能使用其他方式添加密钥,那么您必须投入更多的工作。当然,他们也可以用这个来做:</p>
<pre><code>dict.__setitem__(d, new_key, v)
</code></pre>
<p>在Python中,您不能使事情真正不变,只能停止特定的更改。</p>