openpyxl的基本使用

嘿,你是不是在处理Excel文件时感到束手无策?是不是想要一个简单而又强大的工具来处理数据分析和图表制作?别担心,我们有解决方案!让我向你介绍openpyxl,这是一个Python库,专门用于处理Excel文件。无论是读取、编辑还是创建Excel文件,openpyxl都能轻松应对。无需手动操作Excel,使用openpyxl,您可以自动化处理任意数量的数据。令人惊叹的是,openpyxl不仅仅是一个普通的Excel库。它提供了丰富而强大的功能,包括创建和修改图表,设置数据标签,导入和导出不同格式的数据等等。您可以根据自己的需求灵活调整代码,实现各种复杂的操作。在我们的最新博客文章中,我们将深入介绍openpyxl的各种功能和用法。您将学习如何轻松读取和写入Excel文件、如何创建和定制图表以及如何进行数据处理和分析。无论您是初学者还是有经验的开发者,这篇博客都将为您提供宝贵的知识和技巧。不仅如此,通过openpyxl,您将获得高效而且可靠的处理Excel文件的解决方案。您可以节省大量的时间和精力,提高工作效率,从而专注于更重要的任务和项目。感兴趣了吗?赶快来阅读我们的博客文章,了解openpyxl如何成为您数据分析的得力助手!不仅仅是学习,还可以将这些技能应用于实际工作中,展现您在数据处理方面的专业能力。别再被Excel困扰,跟随我们的指南,掌握openpyxl,成为Excel大师!点击链接阅读完整文章:[博客链接]。我们期待您的阅读和探索!让openpyxl成为您的数据分析利器!

创建工作簿

安装

pip install openpyxl

创建工作簿  

import openpyxl
wb = openpyxl.Workbook()  # 创建excel
# sh1 = wb.active  # 激活第1个工作薄
# sh2 = wb.create_sheet('数据')  # 创建工作薄
sh3 = wb.create_sheet('人员', 0)  # 在指定位置创建工作薄
wb.save('./新建工作簿.xlsx') # 保存

打开工作簿

打开工作簿

import openpyxl
wb = openpyxl.load_workbook('./新建工作簿.xlsx')  # 加载excel
# sh1 = wb.active  # 获取第一个工作薄
# sh2 = wb.get_sheet_by_name('人员')  # 根据名字获取工作薄
sh3 = wb['人员']  # 根据名字获取工作薄
wb.save('./新建工作簿.xlsx') # 保存

填写数据

准确填写

# 填写数据 A1:第A列第1行,单元格填写Hello
sh3['A1'] = 'Hello'
sh3['B2'] = 'Excel'
sh3['C3'] = 'Python'

遍历填写

data = ['Hello', 'Excel', 'Python']
for i, d in enumerate(data):
sh3.cell(1, i + 1).value = d  # cell(行,列)

整行追加填写

# 在最后一行数据后,追加一行数据
data = ['Hello', 'Excel', 'Python']
sh3.append(data)

读取数据

获取工作簿信息

import openpyxl
wb = openpyxl.load_workbook('./新建工作簿.xlsx')  # 加载excel
print(wb.sheetnames)  # ['人员', 'Sheet']
for sh in wb:
print(sh.title)  # 人员/Sheet

获取单元格数据

import openpyxl
wb = openpyxl.load_workbook('./新建工作簿.xlsx')  # 加载excel
sh1 = wb.active
print(sh1.cell(2, 1).value)  #2行1列 逆战
print(sh1['a2'].value)  # A列2行 逆战          

设置样式

字体

from openpyxl.styles import Border, Side, colors, PatternFill, Font
# 创建一个字体样式对象
ft1 = Font(name='微软雅黑', size=30, italic=True, bold=True, color=colors.BLUE)
# 将字体的样式应用到单元格
ws['B2'].font = ft1

内容对齐方式

from openpyxl.styles import Border, Side, colors, PatternFill, Font
# 创建一个对齐方式对象
aligment = Alignment(horizontal='left', vertical='top')
aligment2 = Alignment(horizontal='right', vertical='bottom')
# 设置单元格的宽与高
ws.row_dimensions[1].height = 50
ws.column_dimensions['A'].width = 50
# 将对齐方式应用到单元格
ws['B2'].alignment = aligment
ws['C3'].alignment = aligment2

边框

from openpyxl.styles import Border, Side, colors, PatternFill, Font
# 创建一个线的样式对象
side = Side(color=colors.BLUE, style='medium')
side2 = Side(color='00008000', style='double')
# 创建边框样式对象
border = Border(left=side, right=side2, top=side, bottom=side2)
# 将边框样式应用到单元格
ws['B2'].border = border

背景颜色

from openpyxl.styles import Border, Side, colors, PatternFill, Font
# 创建背景的样式对象
pattern =PatternFill('solid', fgColor=colors.BLUE)
# 将背景颜色样式应用单元格, 不要用pattern属性
ws['B2'].fill = pattern  # AttributeError: 'Cell' object has no attribute 'pattern'

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

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

相关文章

编译 FastDFS 时报错 fatal error: sf/sf_global.h: No such file or directory 解决办法

编译 FastDFS 时,报错如下 gcc -Wall -D_FILE_OFFSET_BITS64 -D_GNU_SOURCE -g -O1 -DDEBUG_FLAG -c -o ../common/fdfs_global.o ../common/fdfs_global.c -I../common -I/usr/local/include In file included from ../common/fdfs_global.c:21:0: ../common/fdf…

力扣每日一题--2088. 统计农场中肥沃金字塔的数目

看到这道题有些人很容易放弃,其实这道题不是很难,主要是题目长,读的容易让人放弃,但是 只要抓住一些性质就可以解决该问题。 本题中的定义放到图像里其实就是个金字塔,下层的那部分比上一层的那部分,长度加…

【PID精讲 14 】积分分离PID和抗积分饱和PID

文章目录 一、积分分离PID1.1 积分分离PID算法基本思想1.2 积分分离PID算法实现步骤1.3 积分分离PID算法1.4 积分分离PID算法实现1.5 积分分离PID算法仿真实例1.6 积分分离PID算法的优缺点 二、抗积分饱和PID2.1 积分饱和现象2.2 抗积分饱和算法2.3 抗积分饱和算法实现2.4 抗积…

排序算法8----归并排序(非递归)(C)

1、介绍 归并排序既可以是内排序(在内存上的数据排序),也可以是外排序(磁盘上)(硬盘)(在文件中的数据排序)。 其他排序一般都是内排序。 区别于快速排序的非递归&#xf…

【React源码 - Diff算法】

介绍 在React学习中,Diff算法(协调算法),想必我们并不陌生,简单来说就是一个对比新老节点寻找差异,然后找出最小的一个变化集,最后对这个最小变化集进行最小的DOM操作,本文将从源码来分析在React(17.0.2)中…

Python入门-字面量,函数,类

Python 中常用的有6种值(数据)的类型 (1)字符串需要用英文的双引号包围起来,比如打印"helloworld" (2)浮点数,整数,字符串等字面量的写法 (3)字符串定义及打印…

java cc链3 TemplatesImpl类加载

java cc链3 TemplatesImpl类加载 使用url加载类 创建一个test类,只存在一段静态代码,构建为class文件, package com.example; public class test {static {System.out.println("aaaaa");}}我这里把构建完成的test.class文件复制到…

01-10jQuery框架

jQuery框架 jQuery框架 概念:jQuery是继prototype之后一个优秀的开源的JavaScript代码库(或JavaScript框架),它封装JavaScript常用的功能代码。 特点: (1) 具有独特的链式语法,可以把多个操作写在一行代…

【极光系列】springboot集成redis

【极光系列】springboot集成redis tips:主要用于快速搭建环境以及部署项目入门 gitee地址 直接下载源码可用 https://gitee.com/shawsongyue/aurora.git模块:aurora_rediswindow安装redis安装步骤 1.下载资源包 直接下载解压:https://pa…

汇编和c++初学,c++字符串加整型,导致的字符串偏移

从汇编角度分析"helloworld"1 “helloworld”1对应 mov dword ptr [a],1 mov eax,dword ptr [a] add eax,offset string "helloworld" (03CCCBCh)eax地址偏移加了1, lea ecx,[test]最终取的内存偏移地址&#xf…

【遥感专题系列】影像信息提取之——面向对象的影像分类技术

“同物异谱,同谱异物”会对影像分类产生的影响,加上高分辨率影像的光谱信息不是很丰富,还有经常伴有光谱相互影响的现象,这对基于像素的分类方法提出了一种挑战,面向对象的影像分类技术可以一定程度减少上述影响。 本…

(三)SQL优化与索引使用

示例 CREATE TABLE `employees` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(24) NOT NULL DEFAULT COMMENT 姓名,`age` int(11) NOT NULL DEFAULT 0 COMMENT 年龄,`position` varchar(20) NOT NULL DEFAULT COMMENT 职位,`hire_time` timestamp NOT NULL DEFAUL…

Go-gin-example 第二部分 jwt验证

文章目录 使用 JWT 进行身份校验jwt知识点补充认识JWTTOKEN是什么jwt的使用场景jwt的组成headerpayloadsignature 下载依赖包编写 jwt 工具包jwt中间件编写如何获取token 编写获取token的Apimodels逻辑编写路由逻辑编写修改路由逻辑 验证token将中间件接入Gin功能验证模块 续接…

交友脱单盲盒源码,纸条广场,支持单独抽取/连抽/同城

源码介绍 交友脱单盲盒源码,纸条广场,单独抽取/连抽/同城。 盲 盒交友脱单系统源码包含了学校、爱好、城市、地区、星座等 等信息,具有首页轮转广告和页面美化功能。 首页提供了两款 连抽和高质量底部连抽的选项,并且可以在后台…

如何通过ISPC使用Xe(核显)进行计算

我一直以为 ISPC 的 Xe 是只包含独立显卡的,比如 A770 这些,没想到看了眼文档是可以使用核显的,但只能在 Linux 和 Windows 上,macOS 不行,就想试试看。 写本文是因为 ISPC 已经出现了三四个版本的大改,但…

基于SSM的网上挂号系统的设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

每日一练:LeeCode-102、二又树的层序遍历【二叉树】

本文是力扣LeeCode-102、二又树的层序遍历 学习与理解过程,本文仅做学习之用,对本题感兴趣的小伙伴可以出门左拐LeeCode。 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点&…

蓝桥杯备赛

洛谷做题打卡day2 嵌套循环yyds! 很多前辈的题解都很长且包括诸如s[i-1][j-1]一直到s[i1][j1]这般冗长的搜索,其实…我觉得直接用循环就好了嘛 两次debug然后AC,嵌套了find函数看起来会稍微简洁一些,其实这题思路不难的——不外…

友元函数与友元类

友元函数与友元类 实验介绍 私有成员只能在类的成员函数内部访问,如果想在别处访问对象的私有成员,只能通过类提供的接口(成员函数)间接地进行。声明为友元函数或友元类后就可以直接访问类中所有成员,但同时也破坏了类的封装性。 为什么在模板篇中讲解友元函数和友元类…