首页 > 解决方案 > 从 excel 文件中删除空白列

问题描述

我编写了一个程序来从 API 下载数据,并将 json 响应解析为多个工作表中的 excel (xlsx) 表。

但是,根据用户对要保存的属性的选择,excel 中可以有空列。有没有办法从excel文件中的所有工作表中删除空列?

我可以通过 pandas 做到这一点,但是,在这种情况下这是不可能的,因为 pandas 和 openpyxl 库会破坏基于 python 脚本的 GUI?

还有其他方法可以实现吗?

编辑:

电流输出:

+----------+----------+--+----------+----------+
| Column A | Column B |  | Column D | Column E |
+----------+----------+--+----------+----------+
| A1       | B1       |  | D1       |          |
| A2       |          |  | D2       |          |
| A3       | B3       |  |          | E3       |
+----------+----------+--+----------+----------+

期望的输出:

+----------+----------+----------+----------+
| Column A | Column B | Column D | Column E |
+----------+----------+----------+----------+
| A1       | B1       | D1       |          |
| A2       |          | D2       |          |
| A3       | B3       |          | E3       |
+----------+----------+----------+----------+

删除空白列的当前代码:

excel_file = pd.ExcelFile(path, engine='openpyxl')
df = pd.read_excel(excel_file,header=None, sheet_name=None)
writer = pd.ExcelWriter(finalpath,engine='openpyxl') 
for key in df:
    sheet= df[key].dropna(how="all").dropna(1,how="all")
    sheet.to_excel(writer, key,index=False, header=False )
writer.save()

需要用不引用 pandas 库的内容替换此代码。

标签: python-3.x

解决方案


推荐阅读