<blockquote>
<p><strong>Question</strong>: Scan columns for a keyword and extract all values in that column</p>
</blockquote>
<ul>
<li><p>定义起始行,在这里<code>1</code>:</p>
<pre><code>min_row = 1
min_col = None
</code></pre></li>
<li><p>循环所有行,从<code>min_row</code>开始递增:</p>
<pre><code>for row in ws.iter_rows(min_row=min_row, values_only=True):
min_row += 1
</code></pre></li>
<li><p><code>try</code>要在<code>row</code>中查找关键字,如果找到<code>break</code>。<br/>
因为<code>index</code>是<code>0-based</code>,所以<code>+1</code>得到列索引<code>1-based</code>。你知道吗</p>
<pre><code> try:
min_col = row.index('Abbreviation') + 1
break
except:
continue
</code></pre></li>
<li><p>如果找到,则循环所有folloup行,直至结束。你知道吗</p>
<blockquote>
<p><strong>Note</strong>: You have not defined a <strong>end condition</strong>! </p>
</blockquote>
<pre><code>if min_col is not None:
for value in map(lambda x: x[0],
sheet1.iter_rows(min_row=min_row,
min_col=min_col,
max_col=min_col,
values_only=True)):
print(value)
</code></pre></li>
</ul>