本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理

以下文章来源于艾然飞翔,作者宁晨

前言

在exce中vlookup函数功能非常强大、方便;但总是手动操作,毕竟还是不高效。在VBA里把一系列的手动操作变为一键操作实现目标,是不错的选择。如果你也会使用python的话,会发现目标实现起来,更简单。

那么使用python操作excel时怎么实现这个功能?

数据源位置为Sheet1工作表:

要在另一个工作表Sheet2里查询到上表里的后四列信息:

实现起来很简单,分三步走:

第一步:分别读取数据

#第一步:读取指定数据,注意工作表名称‘Sheet1’的首字母是大写状态
df_source=pd.read_excel(r'/Users/dxn/Desktop/vlookup.xlsx',header=0,sheet_name='Sheet1',skipfooter=1)
df_target=pd.read_excel(r'/Users/dxn/Desktop/vlookup.xlsx',header=0,sheet_name='Sheet2')

第二步:设置两表共享有相同的索引列

#第二步,设置共有索引
df_source.set_index('物料名称')
df_target.set_index('物料名称')

第三步:update方法完成目标

#第三步,update方法实现目标
df_target.update(df_source)

这三步是目标实现的关键步骤,思路清晰易懂,操作简单。

完整代码如下:

import numpy as np
import pandas as pd
import os
import openpyxl
from openpyxl import Workbook#在python中实现excel里的Vlookup函数功能,分三步走
#创建一个文件夹以存放操作后的文件
os.mkdir(r'/Users/dxn/Desktop/result')
#创建工作簿以盛放操作结果表
wb=Workbook()
wb.save(r'/Users/dxn/Desktop/result/匹配结果.xlsx')#第一步:读取指定数据,注意工作表名称‘Sheet1’的首字母是大写状态
df_source=pd.read_excel(r'/Users/dxn/Desktop/vlookup.xlsx',header=0,sheet_name='Sheet1',skipfooter=1)
df_target=pd.read_excel(r'/Users/dxn/Desktop/vlookup.xlsx',header=0,sheet_name='Sheet2')#第二步,设置共有索引
df_source.set_index('物料名称')
df_target.set_index('物料名称')#第三步,update方法实现目标
df_target.update(df_source)#导出形成工作表
with pd.ExcelWriter(r'/Users/dxn/Desktop/result/匹配结果.xlsx',mode='a') as writer:df_target.to_excel(writer,sheet_name='匹配结果')

vlookup函数功能非常强大,那在Python中如何实现?相关推荐

  1. python有vlookup的功能么,vlookup函数功能非常强大,那在Python中如何实现?

    vlookup函数功能非常强大,那在Python中如何实现? vlookup函数功能非常强大,那在Python中如何实现? 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原 ...

  2. excel中vlookup函数的使用方法_vlookup函数功能非常强大,那在Python中如何实现?

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于艾然飞翔,作者宁晨 前言 在exce中vlookup函数功能非常强大 ...

  3. python实现excel中vlookup函数功能并打包为win环境可执行的exe文件

    最近工作用到数据对比处理,Excel用的比较多,奈何自己VBA不够熟悉,复杂一点的功能,做起来挺吃力的,就想起了Python来解决.   将期望功能代码打包成exe文件,在window环境中运行,获得 ...

  4. 计算机语言VLOOKUP,R下如何实现VLOOKUP函数功能

    原标题:R下如何实现VLOOKUP函数功能 缘起: 当我怀着对周末生活的美好憧憬等待下班的时候,突然领导拿着N份Excel表要求将上面的数据按月汇总到另一张Excel表中(汇总表格如题图).也许领导也 ...

  5. pythonzeros函数_zeros函数是什么意思?python中np.zeros中的参数是什么意思

    zeros函数是什么意思?python中np.zeros中的参数是什么意思 发表时间:2020-01-06 21:09:14 小编:4326手游网 阅读: 在手机上看 手机扫描阅读 MATLAB中ze ...

  6. python怎么理解函数的参数_理解Python中函数的参数

    定义函数的时候,我们把参数的名字和位置确定下来,函数的接口定义就完成了.对于函数的调用者来说,只需要知道如何传递正确的参数,以及函数将返回什么样的值就够了,函数内部的复杂逻辑被封装起来,调用者无需了解 ...

  7. 关于python中lambda函数的描述_关于Python中的lambda函数

    lambda是Python编程语言中使用频率较高的一个关键字.那么,什么是lambda?它有哪些用法?网上的文章汗牛充栋,可是把这个讲透的文章却不多.这里,我们通过阅读各方资料,总结了关于Python ...

  8. python时间函数纳秒_在Python中以秒和纳秒获取POSIX / Unix时间?

    我一直在努力找到一种方法来获取自1970-01-01 00:00:00 UTC以来的时间,以秒为单位,在python中以纳秒为单位,我找不到能给我正确精度的任何东西. 我尝试过使用时间模块,但是精度只 ...

  9. Word处理控件Aspose.Words功能演示:在 Python 中自动合并 MS Word 邮件

    MS Word 邮件合并是一项流行的功能,允许您创建信件.发票.信封.报告等.使用邮件合并,您可以创建模板并使用数据填充它.因此,将为数据源中的每个条目生成一个文档.为了自动化此功能,本文介绍了如何使 ...

最新文章

  1. qt char*转int_Qt在Linux下绘制文字原理-使用FreeType来绘制字形
  2. Lesson 8.1Lesson 8.2 决策树的核心思想与建模流程CART分类树的建模流程与sklearn评估器参数详解
  3. Bootstrap-CSS:表格
  4. 跨平台与云端创新,为企业和开发者开辟更广阔的未来
  5. WPF之DataTemplate(转)
  6. Linux学习笔记---移植官方linux步骤(二)
  7. iPhone开发教程 UI基础课程(58课时)
  8. 2017年3月份前端资源分享
  9. ExoPlayer在开启循环播放时的尴尬情况
  10. Shiro 入门教程
  11. SNN系列|神经元模型篇(4) LIF
  12. np.isin判断数组元素在另一数组中是否存在
  13. 三菱FX5U常见问题解析
  14. 西班牙国家德比次回合时间确定 中国球迷需熬夜
  15. java拼图_java实现拼图游戏
  16. lerna 常用命令
  17. python之emoji表情处理
  18. 基于GEC6818开发板的相册
  19. 计算机匹配函数,匹配函数VLOOKUP使用方法
  20. Android 资源文件错误排查 Process 'command ' 等错误排查

热门文章

  1. java 使用串口获取gps_一篇提及如何通过串口读取并提取GPS信号的论文
  2. windows系统重装(安装)第二篇——利用老毛桃本地PE系统重装工具重装系统
  3. 三极管的一些基本知识
  4. rtorrent 安装
  5. AlexNet论文解读以Pytorch实现(含论文训练细节)
  6. JavaScript屏幕保护网页js特效代码
  7. SUSE Linux 10.0 实现网络电视功能(安装Sopcast,使用xine播放)
  8. 结构型模式-----装饰模式(decorator)
  9. 爬行者LARM---Lucene
  10. 逆变器直流电压利用率