擅长:python、mysql、java
<p>动态生成变量名通常没有那么有用。我肯定会建议像尼克拉斯的答案,但如果你知道这是你想要的,这里是你如何做到的:</p>
<pre><code>for record in result:
objectname = 'Customer' + str(record[0])
print objectname
customername = str(record[1])
exec '%s = Customer(%r)' % (customername, customername)
</code></pre>
<p>这将导致变量<code>Customer1</code>和<code>Customer2</code>被添加到最里面的作用域,就像您执行了以下行一样:</p>
<pre><code>Customer1 = Customer('Customer1')
Customer2 = Customer('Customer2')
</code></pre>
<p>这样做时,需要确保<code>customername</code>是一个<a href="http://docs.python.org/reference/lexical_analysis.html#identifiers" rel="nofollow">valid Python identifier</a>。</p>