回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我创建了一个行,以下面的方式将一个对象附加到列表中</p>
<pre><code>>>> foo = list()
>>> def sum(a, b):
... c = a+b; return c
...
>>> bar_list = [9,8,7,6,5,4,3,2,1,0]
>>> [foo.<a href="https://www.cnpython.com/list/append" class="inner-link">append</a>(sum(i,x)) for i, x in enumerate(bar_list)]
[None, None, None, None, None, None, None, None, None, None]
>>> foo
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9]
>>>
</code></pre>
<p>线</p>
^{pr2}$
<p>会给一个pylint W1060表达式赋值为nothing,但由于我已经在使用foo list来附加值,所以不需要将list理解行赋给某个东西。在</p>
<p><strong>我的问题更多的是关于编程正确性的问题</strong></p>
<p>我应该放弃列表理解而只使用一个简单的for表达式吗?在</p>
<pre><code>>>> for i, x in enumerate(bar_list):
... foo.append(sum(i,x))
</code></pre>
<p>或者,有没有一种正确的方法可以同时使用列表理解和赋值给无?在</p>
<p><strong>回答</strong></p>
<p>谢谢@user2387370,@kindall和@Martijn Pieters。对于其余的注释,我使用append是因为我没有使用list(),我没有使用I+x,因为这只是一个简化的示例。在</p>
<p>我留下如下:</p>
<pre><code>histogramsCtr = hist_impl.HistogramsContainer()
for index, tupl in enumerate(local_ranges_per_histogram_list):
histogramsCtr.append(doSubHistogramData(index, tupl))
return histogramsCtr
</code></pre>