pandas 导出 Excel 文件的时候自动列宽,自动加上边框
2023-06-13 09:13:59 时间
尝试过 xlrd、xlwt、openpyxl、xlwings、pandas 来处理 Excel,如果说除了读写 Excel,还要做数据分析,还是 pandas 最好用,大多数情况下,你根本不需要把数据插入数据库,再用 SQL 去做数据分析。
至于 pandas 怎么用,官方网站有个 10 分钟上手 pandas 的教程[1],没有体验过的可以去体验下。也可以参考 API 说明[2]。
今天主要分享一段代码,可以让 pandas 导出 Excel 文件的时候自动列宽,自动加上边框,省去了手工调整的麻烦。
def to_excel_autowidth_and_border(writer, df, sheetname, startrow,startcol):
df.to_excel(
writer, sheet_name=sheetname, index=False, startrow=startrow, startcol=startcol
) # send df to writer
workbook = writer.book
worksheet = writer.sheets[sheetname] # pull worksheet object
formater = workbook.add_format({"border": 1})
for idx, col in enumerate(df): # loop through all columns
series = df[col]
max_len = (
max(
(
series.astype(str).map(len).max(), # len of largest item
len(str(series.name)), # len of column name/header
)
)
* 3
+ 1
) # adding a little extra space
# print(max_len)
worksheet.set_column(
idx + startcol, idx + startcol, max_len
) # set column width
first_row = startrow
first_col = startcol
last_row = startrow + len(df.index)
last_col = startcol + len(df.columns)
worksheet.conditional_format(
first_row,
first_col,
last_row,
last_col - 1,
options={"type": "formula", "criteria": "True", "format": formater},
)
def main():
writer = pd.ExcelWriter("./result.xlsx")
df = pd.read_excel(
sheet_name=sheet_name, io="/Users/aaron/Desktop/xxxx.xlsx"
)
to_excel_autowidth_and_border(writer, df, sheetname="缺陷分析结果", startrow=1, startcol=1)
writer.save()
最后的话
本文分享了如何在导出 Excel 文件的时候自动列宽,自动加上边框。如果有帮助,还请点赞、在看、转发支持。
参考资料
[1]
10 分钟上手 pandas 的教程: https://pandas.pydata.org/docs/user_guide/10min.html
[2]
API 说明: https://pandas.pydata.org/docs/reference/index.html#api
相关文章
- 导出的Excel名字乱码_恢复的excel文件乱码
- c语言处理excel表格_c语言一般文件的处理过程
- 使用 Office 打开下载的 xlsx 格式 Excel 文件报“文件已损坏,无法打开”错误问题处理
- 利用Python读取和修改Excel文件(包括xls文件和xlsx文件)——基于xlrd、xlwt和openpyxl模块
- python实现将数据写入Excel文件中「建议收藏」
- Python操作Excel文件(2)
- ExcelJS导出Ant Design Table数据为Excel文件
- Excel VBA学习自定义函数-从表1查找字符复制到表2
- pandas无法打开.xlsx文件,xlrd.biffh.XLRDError: Excel xlsx file; not supported
- 图片链接如何在excel里转成图片_mdf文件怎么转成Excel
- Python与Excel:使用xlwings打开Excel文件
- JAVA以UTF-8导出CSV文件,用excel打开产生乱码的解决方法
- 将 SAP ABAP 内表内容本地导出成 Excel 文件试读版
- php获取excel文件数据详解编程语言
- MySQL查询结果导出至Excel:一步到位(mysql查询结果导出excel)
- [问题解决]大数据量上载excel文件数据到SAP系统[ALSM_EXCEL_TO_INTERNAL_TABLE]详解编程语言
- Excel数据快速转移至MySQL(excel转mysql)
- 利用Excel快速连接MySQL数据库(excel连接mysql)
- MySQL数据导出Excel快速教程(mysql转excel)
- 轻松导出:用SQL Server批量将数据导出到Excel(sqlserver导出excel)
- Oracle数据快速导出至Excel表格(oracle导出excel)
- Jsp中的table多表头导出excel文件具体实现