当前位置: 首页 > news >正文

人生苦短我用Python 5-xlwings自动调整表格

人生苦短我用Python 5-xlwings自动调整表格

  • 前言
  • 依赖
  • 主要类
    • App类
    • Books类
    • Sheet 类
  • 示例代码

前言

使用pandas库+openpyxl库实现了csvexcel文件的互相转换,csvexcel后若数据超出了单元格的宽度,部分数据无法完整显示。需要手动打开Excel文件,点击菜单栏开始→格式→自动调整列宽,再保存多个操作。本文介绍如何使用xlwings库实现自动调整列宽的功能。

依赖

pip install xlwings

与excel文件处理的相关的库

说明
pandas数据处理和分析库,特别适用于结构化数据(如表格数据)
openpyxl用于读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件的Python库。支持通过 Python 代码创建、修改和读取 Excel 文件,而无需依赖于 Microsoft Excel 应用程序。
xlwings用于在PythonExcel之间进行交互的库,可在Python中控制Excel进程,进行读写操作,甚至调用VBA代码。

主要类

App类

App类代表 Excel 应用程序实例,用于启动Excel程序。

  • 参数 visible:用于设置Excel程序的可见性
  • 参数 add_book:设置启动Excel时是否新建工作簿

Books类

Books类代表 Excel 中所有打开的工作簿的集合。可以访问、添加或关闭特定的工作簿。

  • add():创建一个新的空白工作簿
  • open(fullname):打开一个已存在的工作簿
  • save():保存工作簿
  • close():关闭工作簿

Sheet 类

Sheet类代表工作簿中的单个工作表。可获取或修改工作表中的数据,或者对工作表进行操作如添加、删除等。

  • autofit(axis):根据单元格内容,自动调整行高或列宽
    • axis=None 表示同时调整行高和列宽
    • axis=‘rows’ 或 axis=‘r’ 表示仅调整行高
    • axis=‘columns’ 或 axis=‘c’ 表示仅调整列宽

示例代码

单个Excel文件自动调整列宽。

import xlwings as xw
def autofit(input_file):# 启动Excel程序app = xw.App(visible=False, add_book=False)# 打开工作簿book = app.books.open(input_file)# 遍历工作表for sheet in book.sheets:# 自动调整列宽sheet.autofit(axis='c')# 保存工作簿book.save()# 关闭工作簿book.close()# 退出Excel程序app.quit()
http://www.lryc.cn/news/435831.html

相关文章:

  • 移动跨平台框架Flutter详细介绍和学习线路分享
  • 线性代数基础:向量、矩阵、张量及其在机器学习中的应用详解
  • Dockerfile中的RUN、CMD、ENTRYPOINT指令区别
  • css grid布局属性详解
  • Tranformer分布式特辑
  • 【Moveit2官方教程】使用 MoveIt Task Constructor (MTC) 框架来定义和执行一个机器人任务
  • 使用docker配置wordpress
  • JVM字节码
  • python访问mysql
  • Java工具插件
  • Class3——Esp32|Thonny——网络连接主机-wifi连接(源代码带教程)
  • 特效【生日视频制作】小车汽车黄金色版悍马车身AE模板修改文字软件生成器教程特效素材【AE模板】
  • 如何利用Java进行快速的足球大小球及亚盘数据处理与分析
  • 代码随想录打卡Day29
  • 图分类!!!
  • 高防IP是如何防御攻击
  • Kubernetes 系列 | k8s入门运维
  • yolov8+deepsort+botsort+bytetrack车辆检测和测速系统
  • 基于准静态自适应环型缓存器(QSARC)的taskBus万兆吞吐实现
  • C++笔记---指针常量和常量指针
  • Python习题 177:设计银行账户类并实现存取款功能
  • IPhone 16:它的 “苹果智能 “包括哪些内容?
  • 【中国国际航空-注册/登录安全分析报告】
  • 【ArcGIS】栅格计算器原理及案例介绍
  • LOOKUP函数和VLOOKUP函数知识讲解与案例演示
  • Java技术深度探索:高并发场景下的线程安全与性能优化
  • Vulnhub-RickdiculouslyEasy靶场(9个flag)
  • Android Studio Menu制作
  • 【mybatis】使用模糊查询时报错:Encountered unexpected token: “?“ “?“
  • 【Linux】文件权限与类型全解:你的文件安全指南