擅长:python、mysql、java
<p>防止输入错误的最好方法是使用诸如<a href="http://pypi.python.org/pypi/pyflakes" rel="nofollow">pyflakes</a>或<a href="http://pypi.python.org/pypi/pylint" rel="nofollow">pylint</a>这样的工具,这些工具将检查代码,并告诉您是否有一个不再使用的变量<code>a.superImportantSesssssionnnn</code>,以及其他许多东西。在</p>
<p>如果你坚持用代码来做,你有两个选择:</p>
<ul>
<li><p>(ab)使用<code>__slots__</code>,<code>__slots__</code>的主要目的是优化内存,以便在您将拥有数百、数千或数百万个对象时,您需要使对象的足迹尽可能小。如果你走这条路,你应该确保包括<code>__weakref__</code>作为允许的名称之一,这样<a href="http://docs.python.org/library/weakref.html" rel="nofollow">weak references</a>将继续工作。</p></li>
<li><p>(ab)使用<code>__setattr__</code>的主要目的是允许运行代码来验证、操作或以其他方式获取给定的数据,并将其以正确的格式存储</p></li>
</ul>
<p>重申一下,上面两个选项并不是用来做拼写检查的,当有人试图支持一个您没有预料到的用例时,您通过禁止所有可能的属性名来限制代码的有用性的努力可能不会得到认可。在</p>