擅长:python、mysql、java
<p>快速浏览一下<code>Unum</code>的<a href="http://home.scarlet.be/be052320/docs.html" rel="nofollow">documentation</a>,似乎您应该能够使用<a href="http://docs.python.org/2/library/functions.html#eval" rel="nofollow">^{<cd2>}</a>执行类似的操作:</p>
<pre><code>from unum.units import * # Load a number of common units.
distance = 100*m
time = eval('9.683*s')
speed = distance / time
print(speed)
</code></pre>
<p>如果您这样做,请确保阅读了<code>eval</code>的文档,以及如何传递本地和全局映射,以限制命名空间访问,使其更安全,尤其是如果您计划将此代码发布给外部世界时。您可能还需要检查字符串中是否有下划线(<code>_</code>),而不允许将这些下划线传递给<code>eval</code>。在</p>
<hr/>
<p>正如kindall所指出的,导入<code>*</code>通常不是好的风格。这里有一个更安全的替代方法,它可以避免从<code>*</code>导入:</p>
^{pr2}$
<p>请注意,我删去了<code>__</code>方法,如本文<a href="http://nedbatchelder.com/blog/201206/eval_really_is_dangerous.html" rel="nofollow">post</a>所提倡的</p>