擅长:python、mysql、java
<p>只需遍历一个维度,然后遍历另一个维度。</p>
<pre><code>for row in self.cells:
for cell in row:
do_something(cell)
</code></pre>
<p>当然,在只有两个维度的情况下,可以使用<a href="http://docs.python.org/tutorial/datastructures.html#list-comprehensions" rel="noreferrer">list comprehension</a>或生成器表达式将其压缩为单个循环,但这不是非常可伸缩或可读的:</p>
<pre><code>for cell in (cell for row in self.cells for cell in row):
do_something(cell)
</code></pre>
<p>如果您需要将其扩展到多个维度,并且确实需要一个平面列表,则可以<a href="http://rightfootin.blogspot.com/2006/09/more-on-python-flatten.html" rel="noreferrer">write a ^{<cd1>} function</a>。</p>