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

python - excel 设置样式

文章目录

  • 前言
    • python - excel 设置样式
      • 1. 准备
      • 2. 示例
        • 2.1. 给单元格设置样式"等线"、大小为24磅、斜体、红色颜色和粗体
        • 2.2. 给第二行设置样式"宋体"、大小为16磅、斜体、红色颜色和粗体
        • 2.3. 给第三行数据设置垂直居中和水平居中
        • 2.4. 给第四行设置行高为30
        • 2.5. 给第五行设置列宽为15
        • 2.6. 给A列设置列宽为 30
        • 2.7. 在A1单元格应用边框样式
        • 2.8. 完整demo

前言

  如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
  而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


python - excel 设置样式

1. 准备

准备一个无样式的excel
在这里插入图片描述
在这里插入图片描述

生成demo可以看这里
python- excel 创建/写入/删sheet+花式遍历

2. 示例

2.1. 给单元格设置样式"等线"、大小为24磅、斜体、红色颜色和粗体
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 输入等线 24号,加粗斜体,字体颜色红色。# 直接使用cell的font属性,将Font对象赋值给它# 声明样式bold_italic_24_font = Font(name='等线', size=24, italic=True, color=Color(rgb="FF0000"), bold=True)# 给单元格设置样式newSheet['A1'].font = bold_italic_24_fontwb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.2. 给第二行设置样式"宋体"、大小为16磅、斜体、红色颜色和粗体
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 输入等线 24号,加粗斜体,字体颜色红色。# 直接使用cell的font属性,将Font对象赋值给它# 声明样式bold_italic_16_font = Font(name='宋体', size=16, italic=True, color=Color(rgb="FF0000"), bold=True)# 给第二行设置样式for cell in newSheet[2]:cell.font = bold_italic_16_fontwb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.3. 给第三行数据设置垂直居中和水平居中
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 给第三行设置对齐方式:给第三行数据设置垂直居中和水平居中for cell in newSheet[3]:cell.alignment = Alignment(horizontal='center', vertical='center')wb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.4. 给第四行设置行高为30
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 给第四行设置行高为30newSheet.row_dimensions[4].height = 30wb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.5. 给第五行设置列宽为15
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 给第五行设置列宽为15for column_letter in range(1, newSheet.max_column + 1):if 5 == column_letter:# chr(64 + column_letter)用于将列号的数值转换为列字母标识符newSheet.column_dimensions[chr(64 + column_letter)].width = 15wb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.6. 给A列设置列宽为 30
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 给A列设置列宽为 30newSheet.column_dimensions['A'].width = 30wb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.7. 在A1单元格应用边框样式
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 创建一个Border对象来定义边框样式border = Border(left=Side(style='thin'),  # 左边框right=Side(style='thin'),  # 右边框top=Side(style='thin'),  # 上边框bottom=Side(style='thin')  # 下边框)# 在A1单元格应用边框样式newSheet['A1'].border = borderwb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.8. 完整demo
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 输入等线 24号,加粗斜体,字体颜色红色。# 直接使用cell的font属性,将Font对象赋值给它# 声明样式bold_italic_24_font = Font(name='等线', size=24, italic=True, color=Color(rgb="FF0000"), bold=True)bold_italic_16_font = Font(name='宋体', size=16, italic=True, color=Color(rgb="FF0000"), bold=True)# 创建一个Border对象来定义边框样式border = Border(left=Side(style='thin'),  # 左边框right=Side(style='thin'),  # 右边框top=Side(style='thin'),  # 上边框bottom=Side(style='thin')  # 下边框)# 给单元格设置样式newSheet['A1'].font = bold_italic_24_font# 给第二行设置样式for cell in newSheet[2]:cell.font = bold_italic_16_font# 给第三行设置对齐方式:给第三行数据设置垂直居中和水平居中for cell in newSheet[3]:cell.alignment = Alignment(horizontal='center', vertical='center')# 给第四行设置行高为30newSheet.row_dimensions[4].height = 30# 给第五行设置列宽为15for column_letter in range(1, newSheet.max_column + 1):if 5 == column_letter:# chr(64 + column_letter)用于将列号的数值转换为列字母标识符newSheet.column_dimensions[chr(64 + column_letter)].width = 15# 给A列设置列宽为 30newSheet.column_dimensions['A'].width = 30# 在A1单元格应用边框样式newSheet['A1'].border = borderwb.save(file_path)except Exception as e:print(f"Exception : {e}")

相关文章:

python - excel 设置样式

文章目录 前言python - excel 设置样式1. 准备2. 示例2.1. 给单元格设置样式"等线"、大小为24磅、斜体、红色颜色和粗体2.2. 给第二行设置样式"宋体"、大小为16磅、斜体、红色颜色和粗体2.3. 给第三行数据设置垂直居中和水平居中2.4. 给第四行设置行高为30…...

Gemmini测试test文件chisel源码详解(一)

DMACommandTrackerTest.scala 源码如下: package gemminiimport scala.collection.mutable.ArrayBufferimport chisel3._ import chisel3.iotesters.{ChiselFlatSpec, PeekPokeTester}class DMACommandTrackerTester(c: DMAReadCommandTracker[UInt]) extends Pee…...

RabbitMQ中的手动应答和自动应答

当使用RabbitMQ来处理消息时,消息确认是一个重要的概念。RabbitMQ提供了两种不同的消息确认方式:自动应答(Automatic Acknowledgment)和手动应答(Manual Acknowledgment)。这两种方式适用于不同的应用场景&…...

【C语言】文件的操作与文件函数的使用(详细讲解)

前言:我们在学习C语言的时候会发现在编写一个程序的时候,数据是存在内存当中的,而当我们退出这个程序的时候会发现这个数据不复存在了,因此我们可以通过文件把数据记录下来,使用文件我们可以将数据直接存放在电脑的硬盘…...

ROS-PX4仿真笔记_1

offbord模式测试 rosrun offboard_pkg position stablelize模式 lqr控制器实验 roslaunch px4 fast_test.launch 无人机起飞1.5-2m sh mybot_gazebo.sh#roslaunch px4 fast_racing.launch & sleep 20; roslaunch ego_planner single_run_in_gazebo.launch & sleep 1…...

使用 Python 中的小波变换信号驾驭股票价格的波动

一、简介 股票上涨和下跌,创造出像海浪一样难以预测的模式和走势。然而,就像科学家通过了解下面的水流来预测波浪的运动一样,我们也可以使用类似的工具破译股票市场的一些模式。 通过利用小波变换的力量,我们深入表面,试图揭示驱动股价的深层原因。这段旅程不仅仅涉及数字…...

AndroidStudio模拟器,没有Google Play的就有ROOT权限

正确选择版本 测试 D:\>adb shell emulator64_x86_64:/ $ su emulator64_x86_64:/ #...

复选框 前端代码

表单中复选框选项 <el-form-item label="是否公开:" hidden="true"><input type="checkbox...

每日一练 | 网络工程师软考真题Day41

1、包过滤防火墙对通过防火墙的数据包进行检查&#xff0c;只有满足条件的数据包才能通过&#xff0c;对数据包的检查内容一般不包括 。 A&#xff0e;源地址 B&#xff0e;目的地址 C&#xff0e;协议 D&#xff0e;有效载荷 2、下面关于ARP木马的描述中&#xff0c;错误的…...

vue使用pinia存储数据并保持数据持久化

在Vue中使用Pinia存储数据并保持数据持久化&#xff0c;你可以遵循以下步骤&#xff1a; 安装Pinia&#xff1a;首先&#xff0c;你需要安装Pinia。可以通过npm或yarn来安装它。在终端中运行以下命令&#xff1a; npm install pinia# 或者使用yarn yarn add pinia创建Pinia St…...

k8s - Flannel

1.Flannel概念剖析 Flannel是 CoreOS 团队针对 Kubernetes 设计的一个覆盖网络&#xff08;Overlay Network&#xff09;工具&#xff0c;其目的在于帮助每一个使用 Kuberentes 的 CoreOS 主机拥有一个完整的子网。这次的分享内容将从Flannel的介绍、工作原理及安装和配置三方…...

服务器中了balckhoues勒索病毒怎么办?勒索病毒解密,数据恢复

近日&#xff0c;云天数据恢复中心发现&#xff0c;有多位用户的服务器中了一种名为balckhoues的勒索病毒&#xff0c;因为绝大多数用户是第一次遇到这种情况&#xff0c;所以对这种类型的勒索病毒并不是很了解。那接下来我们将对balckhoues勒索病毒做一个分析。 中毒特征 服务…...

react-pdf | Warning: TextLayer styles not found.

问题描述&#xff1a; 使用react-pdf展示pdf&#xff0c;但是报警告&#xff0c;Warning: TextLayer styles not found. 解决方法&#xff1a; <Pageloading{"加载中..."}renderAnnotationLayer{false}renderTextLayer{false}/> 添加属性如上&#xff0c;设…...

vue上传文件MD5加密

1.下载MD5依赖 npm install crypto-js 2.在utils文件夹中新增文件md5方法文件&#xff0c;文件名自定义&#xff08;fileMd5Sum.js&#xff09; import CryptoJs from crypto-js export default {// md5值计算fileMd5Sum(file) {let CryptoJS require("crypto-js"…...

vue2 .sync 修饰符

vue2 .sync 修饰符 **创建 工程&#xff1a; H:\java_work\java_springboot\vue_study ctrl按住不放 右键 悬着 powershell H:\java_work\java_springboot\js_study\Vue2_3入门到实战-配套资料\01-随堂代码素材\day04\准备代码\13-sync修饰符 vue --version vue create v-sy…...

使用Tensorrt的一般步骤

使用Tensorrt的一般步骤 TensorRT的使用包括两个阶段&#xff1a;build and deployment。 build&#xff1a;该阶段主要完成模型转换&#xff08;从caffe或TensorFlow到TensorRT&#xff09;&#xff0c;如下图所示&#xff0c;在模型转换时会完成前述优化过程中的层间融合&am…...

uniapp apple 苹果登录 离线本地打包

官方文档 uni-app官网 文档写的不全&#xff0c;没有写离线打包流程 加lib 签名里带 sign in with apple hbuilder开关 代码 测试代码&#xff0c;获取app里所有的provider uni.getProvider({service: oauth,success: function (res) {console.log(res.provider)uni.showT…...

【数据库】Sql Server数据迁移,处理自增字段赋值

给自己一个目标&#xff0c;然后坚持一段时间&#xff0c;总会有收获和感悟&#xff01; 在实际项目开发中&#xff0c;如果遇到高版本导入到低版本&#xff0c;或者低版本转高版本&#xff0c;那么就会出现版本不兼容无法导入&#xff0c;此时通过程序遍历创建表和添加数据方式…...

JOSEF约瑟 矿用一般型选择性漏电继电器 LXY2-660 Φ45 JKY1-660

系列型号&#xff1a; JY82A检漏继电器 JY82B检漏继电器 JY82-380/660检漏继电器 JY82-IV检漏继电器 JY82-2P检漏继电器 JY82-2/3检漏继电器 JJKY检漏继电器 JD型检漏继电器 JY82-IV;JY82J JY82-II;JY82-III JY82-1P;JY82-2PA;JY82-2PB JJB-380;JJB-380/660 JD-12…...

DHCP自动分配IP原理

DHCP自动分配IP原理 1.采用UDP通信方式 2.服务器IP&#xff1a;255.255.255.255&#xff1b; 服务器端口&#xff1a;67, 设备接收端口&#xff1a;68 3.设备向服务器发送DISCOVER信息 4.设备收到服务器回应&#xff0c;且解析正确 5.设备向服务器发送REQUEST请求消息 6.设备接…...

Docker 离线安装指南

参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性&#xff0c;不同版本的Docker对内核版本有不同要求。例如&#xff0c;Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本&#xff0c;Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...

synchronized 学习

学习源&#xff1a; https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖&#xff0c;也要考虑性能问题&#xff08;场景&#xff09; 2.常见面试问题&#xff1a; sync出…...

VB.net复制Ntag213卡写入UID

本示例使用的发卡器&#xff1a;https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

Spring Boot 实现流式响应(兼容 2.7.x)

在实际开发中&#xff0c;我们可能会遇到一些流式数据处理的场景&#xff0c;比如接收来自上游接口的 Server-Sent Events&#xff08;SSE&#xff09; 或 流式 JSON 内容&#xff0c;并将其原样中转给前端页面或客户端。这种情况下&#xff0c;传统的 RestTemplate 缓存机制会…...

高频面试之3Zookeeper

高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个&#xff1f;3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制&#xff08;过半机制&#xff0…...

【HTML-16】深入理解HTML中的块元素与行内元素

HTML元素根据其显示特性可以分为两大类&#xff1a;块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...

LLM基础1_语言模型如何处理文本

基于GitHub项目&#xff1a;https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken&#xff1a;OpenAI开发的专业"分词器" torch&#xff1a;Facebook开发的强力计算引擎&#xff0c;相当于超级计算器 理解词嵌入&#xff1a;给词语画"…...

Spring AI 入门:Java 开发者的生成式 AI 实践之路

一、Spring AI 简介 在人工智能技术快速迭代的今天&#xff0c;Spring AI 作为 Spring 生态系统的新生力量&#xff0c;正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务&#xff08;如 OpenAI、Anthropic&#xff09;的无缝对接&…...

NFT模式:数字资产确权与链游经济系统构建

NFT模式&#xff1a;数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新&#xff1a;构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议&#xff1a;基于LayerZero协议实现以太坊、Solana等公链资产互通&#xff0c;通过零知…...

【Oracle】分区表

个人主页&#xff1a;Guiat 归属专栏&#xff1a;Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...