最全Python操作excel代码,让你每天早下班两小时

news2025/1/8 12:50:47

在数字化时代,很多人工作中经常和excel打交道。本文介绍Python操作excel的脚本,让你工作效率更高。
  

文章目录

    • 一、安装openpyxl模块
    • 二、加载库
    • 三、创建文件和工作表
    • 四、在工作表指定单元格写数据
    • 五、设置单元格的颜色字体
    • 六、在excel中写入表格

  

一、安装openpyxl模块

  
Python操作excel主要用到了openpyxl模块,按win+R打开cmd,在里面输入

pip3 install openpyxl

即可成功安装openpyxl模块。

  
  

二、加载库

  
接着加载库,并设置数据存放的文件夹。

import os
import random
import openpyxl
import numpy as np
import pandas as pd
from openpyxl.drawing.image import Image
from openpyxl.worksheet.table import Table,TableStyleInfo
from openpyxl.styles import Border, Side, PatternFill, Font, GradientFill, Alignment
from openpyxl.utils import get_column_letter,column_index_from_string
#导入库

os.chdir(r'G:/python/13_python处理excel/')
#设置文件存放的地址

  
  

三、创建文件和工作表

  
接着创建文件和工作表,代码如下:

wb = openpyxl.Workbook()
#创建工作表
wb_sht1 = wb.create_sheet(title='插入数据', index=0)
wb_sht2 = wb.create_sheet(title='插入表格', index=0)
wb.save('cs.xlsx')
wb.close()

得到结果:
  
在这里插入图片描述

也可以用函数删除工作表,代码如下:

wb.remove(wb_sht1)

  
  

四、在工作表指定单元格写数据

  
接着在工作表中写数据,代码如下:

#在每一行写入行号
wb = openpyxl.Workbook()
#创建工作表
wb_sht1 = wb.create_sheet(title='插入数据', index=0)
wb_sht2 = wb.create_sheet(title='插入表格', index=0)
for r_index in range(1, 10):
    for c_index in range(1, 10):
        wb_sht1.cell(row=r_index, column=c_index, value=r_index)

两层for循环控制在相应位置写下行号,得到结果:
  
在这里插入图片描述

  
  

五、设置单元格的颜色字体

  
接着在A1单元格测试设置字体大小、颜色、边框线条,代码如下:

thin = Side(border_style="thin", color="FF0000")
#红色细线条
double = Side(border_style="double", color="000000")
#黑色粗线条
wb_sht1_A1 = wb_sht1["A1"]
#选择要调整颜色的单元格
wb_sht1_A1.font = Font(b=True, color='008000')
#设置单元格字体颜色
wb_sht1_A1.alignment = Alignment(horizontal='left', vertical='center')
#设置单元格排列方式
wb_sht1_A1.border = Border(top=double, left=thin, right=thin, bottom=double)
#设置边框线条
wb_sht1_A1.fill = PatternFill("solid", fgColor="0000FF")
#设置单元格填充颜色

得到结果:
  
在这里插入图片描述

  
  

六、在excel中写入表格

  
最后在excel中写入表格,代码如下:

os.chdir(r'G:/python/13_python处理excel/')
#设置文件存放的地址
wb = openpyxl.Workbook()
#创建工作表
wb_sht1 = wb.create_sheet(title='插入数据', index=0)
wb_sht2 = wb.create_sheet(title='插入表格', index=0)
date = pd.DataFrame(np.random.randint(20, 50, (4, 4)))
col_name = ['col1', 'col2', 'col3', 'col4']
date.columns = col_name
wb_sht2.append(col_name)
for row in range(date.shape[0]):
    wb_sht2.append(list(date.iloc[row, ]))
table = Table(id=1, displayName='excel_table3', ref='A1:D4')
wb_sht2.add_table(table)
wb.save('cs1.xlsx')
wb.close()

得到结果:
  
在这里插入图片描述

至此,用Python中的openpyxl模块操作excel代码已讲解完毕。感兴趣的小伙伴可以更深入地测试这些代码。本文只给出了基础代码,更多特殊需求,可以在此代码的基础上进行调整。如果想在excel中设置好格式,只把数据粘贴到文档中,还可以调用xlwings模块进行excel操作。
  
如想了解更多Python中的数据分析,可以翻看“阿黎逸阳的代码”公众号中“数据分析”模块相关文章。

  
你可能感兴趣:
用Python绘制皮卡丘
用Python绘制词云图
用Python绘制520永恒心动
Python人脸识别—我的眼里只有你
Python画好看的星空图(唯美的背景)
【Python】情人节表白烟花(带声音和文字)
用Python中的py2neo库操作neo4j,搭建关联图谱
Python浪漫表白源码合集(爱心、玫瑰花、照片墙、星空下的告白)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/21759.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【数据结构初阶】C语言从0到1带你了解直接插入排序

🌟hello,各位读者大大们你们好呀🌟 🍭🍭系列专栏:【数据结构初阶】 ✒️✒️本篇内容:深入剖析直接插入排序 🚢🚢作者简介:计算机海洋的新进船长一枚&#xf…

等保整改之开启Nacos认证-漏扫发现我们使用Nacos时存在未授权访问的漏洞

背景 还是之前的一个小项目,部署在专网中,等保在做了一次漏扫后,说是有个高危漏洞要求整改。打开漏洞扫描报告后,总体网络风险级别为:比较危险: nacos未授权访问漏洞 ,漏洞详细信息如下&#x…

Linux基本用户操作

1.查看用户名 指令:whoami 在Linux下查看本用户下的用户名,可以在普通用户和root超级用户下操作,如下: 其实,查看用户名也可以不用指令就能查看: 箭头所指的就是用户名,root用户名就是root。 2.…

第2章 持久化初始数据到指定表

004 AuthorityScopeEnum、Role、Topic、TaskInfoDto、TasksQz AuthorityScopeEnum:该枚举定义了6种当前程序的访问权限,前程序通过该枚举实例选定其中(NONE(-1:无任何权限)/Custom(1:自定义权限)/MyDepart(2:本部门权…

Typescript:(一)基本使用

TypeScript 定义:Typescript是拥有类型的JavaScript超集 它可以编译成普通,干净,完整的JavaScript代码 我们可以将TypeScript理解成加强版的JavaScript。 JavaScript所拥有的特性,TypeScript全部都是支持的,并且它紧…

Linux系统挂载命令mount(U盘、移动硬盘、光盘)

Linux系统不像windows系统可以自动识别加载新设备,Linux系统需要手动识别,手动加载。Linux中一切皆文件。文件通过一个很大的文件树来组织,文件树的根目录是:/,从根目开始录逐级展开。这些文件通过若干设备铺展开。 命…

BCG 对话框表格控件CBCGPGridCtrl显示子

1、1、MFC窗口中拖放Picture Control 2、 void CSimpleGridSampleDlg::_FillGrid() { CWaitCursor wait; // Create grid tree: CRect rectClient; GetClientRect(rectClient); m_wndGrid.Create(WS_CHILD | WS_VISIBLE, rectClient, this, ID_GRID); m_wndGri…

SAR回波的多普勒特性

专栏目录链接: SAR成像专栏目录 今天我们来看看SAR回波的多普勒特性。 首先推导下正侧视下SAR回波的多普勒频率公式,前提条件: 正侧视不考虑平台运动的不稳定性忽略地球曲率忽略地球自转的影响 根据多普勒效应原理可得SAR回波的多普勒频率(可以回顾下:《雷达导论PART IV.…

C++之二叉搜索树详解

文章目录前言一、二叉搜索树的概念二、二叉搜索树的操作1.节点类2.二叉搜索树类内部定义3.遍历操作4.构造函数5.拷贝构造函数6.赋值运算符重载7.析构函数8.插入函数非递归实现递归实现9.删除函数非递归实现递归实现10.查找函数非递归实现递归实现三、二叉搜索树的应用K模型KV模…

索引和事务

文章目录 1.索引的含义以及应用 2.索引的查看、创建 3.带主键的索引底层结构 4.事务的含义 5.事务的特性 6.JDBC 一.索引的含义及应用 1.索引我们可以认为是文章的目录,有了它,我们可以更加快速的 查看到我们想要查找的内容。 2.并不是说我们加了索引&…

一周侃 | 周末随笔及推荐

前言 每周一次的闲聊胡侃又来啦!这一周世界发生了许多大事,从举世瞩目的中美元首会晤到新的防疫政策二十条出来之后各地防疫政策的转变,再到俄乌冲突持续进行,联大通过俄罗斯赔偿计划……百年未有之大变局正加速演进,…

【k8s】8、service详解

文章目录一、Service详解1、Service介绍1.1 userspace模式1.2 iptables 模式1.3 ipvs模式2、Service类型3、Service使用3.1 实现环境准备3.2 Cluster类型的Service3.2.1 cluster类型的生成ip3.2.2 cluster类型不生成ip3.3 NodePort类型的service3.4 LoadBalancer类型的Service3…

【MySQL】MySQL体系结构与内部组件工作原理解析(原理篇)(MySQL专栏启动)

📫作者简介:小明java问道之路,专注于研究 Java/ Liunx内核/ C及汇编/计算机底层原理/源码,就职于大型金融公司后端高级工程师,擅长交易领域的高安全/可用/并发/性能的架构设计与演进、系统优化与稳定性建设。 &#x1…

GEE两行代码下载任意范围影像python API

GEE三行代码下载任意范围影像 前不久,吴秋生博士更新了geemap,现在能更方便地下载影像了最新的下载再也不受有限的Google Drive、图像过大会自动分割、缓慢的下载速度影响了。 有兴趣的同学可以see this: https://geemap.org/notebooks/118_download_i…

蓝牙传输 LE Audio技术

蓝牙 蓝牙(Bluetooth)技术,实际上是一种短距离无线电技术,利用"蓝牙"技术,能够有效地简化掌上电脑、笔记本电脑和移动电话手机等移动通信终端设备之间的通信,也能够成功地简化以上这些设备与因特网Internet之间的通信&…

react(受控组件、生命周期、使用脚手架)

目录 使用脚手架 其他: 学习js: mdn 文档 MDN Web Docs 在react官方文档的 CDN 链接里下载最新的react版本react官网:React 官方中文文档 – 用于构建用户界面的 JavaScript 库 BootCDN - Bootstrap 中文网开源项目免费 CDN 加速服务 1. 受控组件…

ES6 入门教程 15 Proxy 15.3 Proxy.revocable() 15.4 this 问题 15.5 实例:Web 服务的客户端

ES6 入门教程 ECMAScript 6 入门 作者:阮一峰 本文仅用于学习记录,不存在任何商业用途,如侵删 文章目录ES6 入门教程15 Proxy15.3 Proxy.revocable()15.4 this 问题15.5 实例:Web 服务的客户端15 Proxy 15.3 Proxy.revocable() …

BLDC的列子2

1.三相采样电流的采集以u相为举例。 采集下桥臂I-V的电压。在除以采样电阻。就可以得到采样电流。但由于I-V的电压比较小。 需要一个放大电路把电压放大ADC才采集的到。 放大后的电压是AMP_IU.用ADC去采集这个电压。从而算出I_V的电压。 在电机停止的时候也会有微小的电压。…

Azure 深入浅出[2] --- App Service的部署并查看应用Log

假设读者已经申请了Azure的免费订阅的账户。如果想部署一个前端NodeJS的服务到Azure的App Service应该如何部署并查看应用程序本身的日志呢?笔者在这边文章就带大家快速看一下。 1.环境准备 安装Visual Studio Code以及在Visual Studio Code里面安装Azure App Ser…

文件上传漏洞 | iwebsec

文章目录靶场搭建文件上传漏洞前端JS过滤绕过文件名过滤绕过Content-Type过滤绕过文件头过滤绕过.htaccess文件上传文件截断上传条件竞争文件上传靶场搭建 参考文章https://juejin.cn/post/7068931744547733517出现个小问题,我的端口冲突了,所以换了一个…