擅长:python、mysql、java
<p>这并不能完全回答你的问题,但也许有助于:</p>
<p>如前所述,应尽可能避免<code>eval</code>。一个更好的方法是使用字典解包。这也是非常动态的,不易出错。</p>
<p>示例:</p>
<pre><code>def fullName(name = "noName", family = "noFamily"):
return name + family
functionList = {'fullName': fullName}
function = 'fullName'
parameters = {'name': 'Foo', 'family': 'Bar'}
print functionList[function](**parameters)
# prints FooBar
parameters = {'name': 'Foo'}
print functionList[function](**parameters)
# prints FoonoFamily
</code></pre>