<p>代码如下:</p>
<pre><code>a = ['foo', 'bar', 'doh', 'rae']
</code></pre>
<p>我想要字符串<code>SUM(foo) AS foo, SUM(bar) AS bar, SUM(doh) AS doh, SUM(rae) AS rae</code>。这是有效的:</p>
<p>尝试了一些类似<code>'SUM(%s) AS %s' % ([x for x in a], [x for x in a])</code>这样的聪明方法,但显然行不通,使用两种列表理解方法效率低下。在</p>
<p>有什么提示吗?在</p>
<p>你可以使用str.格式函数在一个字符串中两次传递一个参数,如下所示:</p>
<pre><code>s = ', '.join(['SUM({0}) AS {0}'.format(x) for x in a])
</code></pre>
<p>通过一个列表理解和一个连接操作,它可以产生所需的输出</p>
^{pr2}$
<p>你好!在</p>