Python中openpyxl实现vlookup函数的实例


Posted in Python onOctober 28, 2020

相信很多学编程的人都对Vlookup函数不陌生,一些在excel中不方便处理的大量数据,用Python就可以轻松解决。下面介绍openpyxl库中如何实现vlookup函数 :

1.数据源介绍

如图所示,有一个“ vlookup.xlsx ”文件,“ A1:F11 ”是我们的数据源区域,“ K1:L5 ”是我们的查找源区域。我们的目的就是要在数据源区域的 G 列加一列数据,查找出不同类型下名称表示。

Python中openpyxl实现vlookup函数的实例

2.Vlookup函数介绍

这个函数我想大家应该都会,大家应该也不需要我介绍的太详细,因此我就简单的为大家介绍一下 vlookup 函数的语法。

  • 参数说明:vlookup (待查找目标, 查找区域, 匹配值所在的列, 精确匹配 OR 模糊查找);
  • 用一句通俗的话来说明 vlookup 函数的用法:针对每一个待查找目标,它就能从指定的查找区域中,查找返回想要查找到的值。

3.Excel中使用Vlookup函数

针对上述提到的数据源,了解 Vlookup 函数的语法后,下面来看看如何在 Excel 中使用 Vlookup 函数。

Python中openpyxl实现vlookup函数的实例

观察上图:首先,我们在 G1 单元格新增了一个“名称”列。接着,在 G2 单元格我们写了一个 vlookup 公式,E2 表示每一个待查找值,K1:L5 表示待查找区域,我们使用 F3 快捷键将这个区域变为了绝对引用,因为我们的查找区域就是这一个固定范围,表示待返回值在查找区域中所在的列数,表示精确匹配。最后,使用填充柄下拉填充即可。

4.Python中使用Vlookup函数

在 Python 中利用 openpyxl 库,就可以完成公式的填充。因此在使用 openpyxl 之前,需要使用 pip install openpyxl 安装好这个库。

from openpyxl import load_workbook
 
 
workbook = load_workbook("vlookup.xlsx")
sheet = workbook["Sheet1"]
 
 
sheet["G1"] = "名称"
for i in range(2,sheet.max_row+1): 
    sheet[f"G{i}"] = f'=VLOOKUP(E{i},$K$1:$L$5,2,0)'
workbook.save(filename = "vllokup1.xlsx")

在 openpyxl 中,读取已有的 Excel 文件,使用到的是 load_workbook 类,因此需要提前导入这个类。接着,实例化 load_workbook("vlookup.xlsx") 对象,得到一个工作簿对象。然后,使用 workbook["Sheet1"] 激活该工作簿中的 Sheet1 表,表示我们要针对这个表进行操作。完成上述操作后,下面就可以进行 vlookup 公式的填写了。

首先,我们利用 sheet["G1"] = "名称"给 G1单元格增加了一个表头。然后写了一个循环,循环第2行到最后一行,针对每一个 G 列单元格,我们写入上述 vlookup 公式。最后记得保存一下即可。

到此这篇关于Python中openpyxl实现vlookup函数的实例的文章就介绍到这了,更多相关Python基础之openpyxl如何实现vlookup函数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
跟老齐学Python之玩转字符串(1)
Sep 14 Python
Python基于动态规划算法解决01背包问题实例
Dec 06 Python
Python机器学习算法之k均值聚类(k-means)
Feb 23 Python
Python功能点实现:函数级/代码块级计时器
Jan 02 Python
Python实现的远程文件自动打包并下载功能示例
Jul 12 Python
解决在pycharm运行代码,调用CMD窗口的命令运行显示乱码问题
Aug 23 Python
python安装scipy的步骤解析
Sep 28 Python
Python数据可视化:饼状图的实例讲解
Dec 07 Python
python Qt5实现窗体跟踪鼠标移动
Dec 13 Python
tensorflow 大于某个值为1,小于为0的实例
Jun 30 Python
Python3爬虫里关于识别微博宫格验证码的知识点详解
Jul 30 Python
pytorch 如何使用batch训练lstm网络
May 28 Python
PyCharm最新激活码(2020/10/27全网最新)
Oct 27 #Python
Python下使用Trackbar实现绘图板
Oct 27 #Python
python openCV自制绘画板
Oct 27 #Python
如何在windows下安装配置python工具Ulipad
Oct 27 #Python
Python调用JavaScript代码的方法
Oct 27 #Python
Pycharm中如何关掉python console
Oct 27 #Python
python和C++共享内存传输图像的示例
Oct 27 #Python
You might like
PHP+DBM的同学录程序(2)
2006/10/09 PHP
php学习之流程控制实现代码
2011/06/09 PHP
ThinkPHP使用心得分享-分页类Page的用法
2014/05/15 PHP
php中数据库连接方式pdo和mysqli对比分析
2015/02/25 PHP
PHP判断是手机端还是PC端 PHP判断是否是微信浏览器
2017/03/15 PHP
php简单随机字符串生成方法示例
2017/04/19 PHP
Laravel5.5 视图 - 创建视图和数据传递示例
2019/10/21 PHP
JQuery 选择器 xpath 语法应用
2010/05/13 Javascript
js 实现日期灵活格式化的小例子
2013/07/14 Javascript
JS对select控件option选项的增删改查示例代码
2013/10/21 Javascript
有效提高JavaScript执行效率的几点知识
2015/01/31 Javascript
举例讲解JavaScript中将数组元素转换为字符串的方法
2015/10/25 Javascript
基于javascript代码实现通过点击图片显示原图片
2015/11/29 Javascript
JavaScript 中 apply 、call 的详解
2017/03/21 Javascript
基于daterangepicker日历插件使用参数注意的问题
2017/08/10 Javascript
简述Angular 5 快速入门
2017/11/04 Javascript
AngularJS使用Filter自定义过滤器控制ng-repeat去除重复功能示例
2018/04/21 Javascript
vue中过滤器filter的讲解
2019/01/21 Javascript
Vuex,iView UI面包屑导航使用扩展详解
2019/11/04 Javascript
对Pandas DataFrame缺失值的查找与填充示例讲解
2018/11/06 Python
用uWSGI和Nginx部署Flask项目的方法示例
2019/05/05 Python
在Python中COM口的调用方法
2019/07/03 Python
Pandas数据离散化原理及实例解析
2019/11/16 Python
PyCharm 无法 import pandas 程序卡住的解决方式
2020/03/09 Python
Python Matplotlib绘图基础知识代码解析
2020/08/31 Python
用CSS3实现无限循环的无缝滚动的实例代码
2017/07/04 HTML / CSS
卡骆驰德国官方网站:Crocs德国
2019/03/29 全球购物
Probikekit欧盟:在线公路自行车专家
2019/07/12 全球购物
当文件系统受到破坏时,如何检查和修复系统?
2012/03/09 面试题
2014年党支部承诺书
2014/05/30 职场文书
党员教师自我剖析材料
2014/09/29 职场文书
大客户经理岗位职责
2015/04/09 职场文书
python批量更改目录名/文件名的方法
2021/04/18 Python
JavaWeb 入门篇(3)ServletContext 详解 具体应用
2021/07/16 Java/Android
磁贴还没死, 微软Win11可修改注册表找回Win10开始菜单
2021/11/21 数码科技
VW、VH适配移动端的解决方案与常见问题
2023/05/21 HTML / CSS