擅长:python、mysql、java
<p>我想使(扩展)<a href="https://stackoverflow.com/a/35748574/5741205">@Erol's answer</a>更灵活一些。</p>
<p>假设我们不知道excel工作表中的行总数:</p>
<pre><code>xl = pd.ExcelFile(filepath)
# parsing first (index: 0) sheet
total_rows = xl.book.sheet_by_index(0).nrows
skiprows = 4
nrows = 20
# calc number of footer rows
# (-1) - for the header row
skipfooter = total_rows - nrows - skiprows - 1
df = xl.parse(0, skiprows=skiprows, skipfooter=skipfooter, parse_cols="A:D") \
.dropna(axis=1, how='all')
</code></pre>
<p><code>.dropna(axis=1, how='all')</code>将删除仅包含<strong>的所有列</strong><code>NaN</code></p>