iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >怎么用Python读取Excel数据实现批量生成合同
  • 871
分享到

怎么用Python读取Excel数据实现批量生成合同

2023-06-30 16:06:17 871人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍“怎么用python读取excel数据实现批量生成合同”,在日常操作中,相信很多人在怎么用Python读取Excel数据实现批量生成合同问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Py

这篇文章主要介绍“怎么用python读取excel数据实现批量生成合同”,在日常操作中,相信很多人在怎么用Python读取Excel数据实现批量生成合同问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Python读取Excel数据实现批量生成合同”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

一、背景

在我们经济交往中,有时会涉及到销售合同的批量制作。比如我们需要根据如下合同数据(Excel),进行批量生成销售合同(Word)。

怎么用Python读取Excel数据实现批量生成合同

二、准备

我们首先要准备好一份合同模板(Word),将需要替换的合同数据用{{}}表示,如下:

怎么用Python读取Excel数据实现批量生成合同

三、实战

1.安装相关库

openpyxl是一个操作Excel非常好用的库,功能相对于xlrd、xlwt来说更为完整,我们首先安装它:

pip install openpyxl

docxtpl 是一个操作Word非常好用的库,其主要通过对docx文档模板加载,从而对其进行修改,我们也安装下这个库。

pip install docxtpl

2.读取合同数据

我们可以通过load_workbook方法打开合同数据(Excel表),然后读取每一个合同数据并存入到data字典,再将每个字典放入到列表datas中。PS:由于读取的签约日期是一个时间戳,需要通过strftime方法转为标准的年月日格式。

from docxtpl import DocxTemplatefrom openpyxl import load_workbookwb = load_workbook("合同数据.xlsx")ws = wb['Sheet1']datas = []for row in range(2, ws.max_row):    name1 = ws[f"A{row}"].value    name2 = ws[f"B{row}"].value    price = ws[f"C{row}"].value    product = ws[f"D{row}"].value    count = ws[f"E{row}"].value    deadline = ws[f"F{row}"].value    time = ws[f"G{row}"].value    time = time.strftime("%Y-%m-%d")    data = {"甲方": name1,            "乙方": name2,             "合同价款": price,             "产品名称": product,             "产品数量": count,            "付款期限": deadline,            "签约时间": time}    datas.append(data)datas

当然,我们也可以通过pandas大法来读取合同数据,主要运用到dataframe_to_rows方法,将pandas格式的数据转为一行一行的数据。index=False表示不需要索引,header=False表示不需要表头。

import pandas as pdfrom openpyxl.utils.dataframe import dataframe_to_rowsdf = pd.read_excel("合同数据.xlsx")df["签约日期"] = df["签约日期"].apply(lambda x:x.strftime("%Y-%m-%d"))datas = []for row in dataframe_to_rows(df,index=False,header=False):    data = {"甲方": row[0],             "乙方": row[1],             "合同价款": row[2],             "产品名称": row[3],             "产品数量": row[4],            "付款期限": row[5],            "签约时间": row[6]}     datas.append(data)datas

我们可以打印datas,效果如下:

[{'甲方': 'J哥',  '乙方': '老王',  '合同价款': 1000000,  '产品名称': '菜J学Python',  '产品数量': 1,  '付款期限': 30,  '签约时间': '2022-05-20'}, {'甲方': 'K哥',  '乙方': '张三',  '合同价款': 20000,  '产品名称': '冰箱',  '产品数量': 2,  '付款期限': 40,  '签约时间': '2022-05-21'}, {'甲方': 'C哥',  '乙方': '李四',  '合同价款': 30000,  '产品名称': '电脑',  '产品数量': 3,  '付款期限': 50,  '签约时间': '2022-05-22'}, {'甲方': 'B哥',  '乙方': '王五',  '合同价款': 40000,  '产品名称': '洗衣机',  '产品数量': 4,  '付款期限': 60,  '签约时间': '2022-05-23'}, {'甲方': 'P哥',  '乙方': '赵六',  '合同价款': 50000,  '产品名称': '微波炉',  '产品数量': 5,  '付款期限': 70,  '签约时间': '2022-05-24'}]

3.批量合同生成

这里运用for语句遍历每一个合同数据data(字典格式),打开合同模板,并将data替换掉合同模板中的数据,然后保存为新的销售合同。

for data in datas:    tpl = DocxTemplate('合同模板.docx')    tpl.render(data)    tpl.save(f'合同生成/{data["甲方"]}的销售合同{data["签约时间"]}.docx')    print(f'{data["甲方"]}的销售合同已生成')

代码运行后,效果如下:

怎么用Python读取Excel数据实现批量生成合同

打开其中一个销售合同,效果如下:

怎么用Python读取Excel数据实现批量生成合同

到此,关于“怎么用Python读取Excel数据实现批量生成合同”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: 怎么用Python读取Excel数据实现批量生成合同

本文链接: https://www.lsjlt.com/news/330286.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python读取Excel数据实现批量生成合同
    目录一、背景二、准备三、实战1.安装相关库2.读取合同数据3.批量合同生成大家好,我是J哥。 在我们的工作中,面临着大量的重复性工作,通过人工方式处理往往耗时耗力易出错。而Pytho...
    99+
    2024-04-02
  • 怎么用Python读取Excel数据实现批量生成合同
    这篇文章主要介绍“怎么用Python读取Excel数据实现批量生成合同”,在日常操作中,相信很多人在怎么用Python读取Excel数据实现批量生成合同问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Py...
    99+
    2023-06-30
  • Python读取Excel数据实现批量生成PPT
    目录背景需求准备PPT数据PPT模板实战导入相关模块读取电影数据读取PPT模板插入数据背景 大家好,我是J哥。 我们常常面临着大量的重复性工作,通过人工方式处理往往耗时耗力易出错。而...
    99+
    2024-04-02
  • Redis批量生成数据的实现
    目录Redis批量生成数据Redis自带Debug方法Shell脚本Redis批量生成数据 从研究Redis开始,一直会有一些Redis键值数量或者键值大小的场景要求,显然我们不可能...
    99+
    2024-04-02
  • python怎么读取excel数据
    在Python中读取Excel数据通常使用的是pandas库。可以通过以下步骤来读取Excel数据: 首先需要安装pandas库,...
    99+
    2024-04-02
  • Python怎么实现Excel数据读取和写入
    这篇“Python怎么实现Excel数据读取和写入”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python怎么实现Exce...
    99+
    2023-06-30
  • pandas读取Excel批量转换时间戳怎么实现
    这篇文章主要介绍“pandas读取Excel批量转换时间戳怎么实现”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“pandas读取Excel批量转换时间戳怎么实现”文章能帮助大家解决问题。一、安装pi...
    99+
    2023-07-05
  • 怎么用Python实现批量生成法务函
    这篇文章将为大家详细讲解有关怎么用Python实现批量生成法务函,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。情境问题小王是一名法务专员,工作中会处理所在公司的侵权事件并向侵权方发送法务函。他会按照【法务...
    99+
    2023-06-29
  • 怎么使用Python根据原始Excel表格批量生成目标Excel表格
    本文小编为大家详细介绍“怎么使用Python根据原始Excel表格批量生成目标Excel表格”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么使用Python根据原始Excel表格批量生成目标Excel表格”文章能帮助大家解决疑惑,下面跟...
    99+
    2023-07-06
  • 怎么使用Redis批量生成数据
    这篇文章主要介绍“怎么使用Redis批量生成数据”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用Redis批量生成数据”文章能帮助大家解决问题。Redis自带Debug方法redis提供的de...
    99+
    2023-06-30
  • python怎么读取excel的数据
    如何在 python 中读取 excel 数据?通过使用 pandas 库中的 read_excel() 函数,您可以轻松地读取 excel 数据:导入 pandas 库:import ...
    99+
    2024-04-02
  • python用faker库批量生成假数据
    目录楔子faker使用方法基本使用地理信息类基础信息类计算机基础、Internet信息类网络基础信息类浏览器信息类数字类文本、加密类时间信息类小结楔子 我们平时在做测试的时候,经常...
    99+
    2024-04-02
  • 怎么通过Python实现批量数据提取
    这篇文章主要介绍“怎么通过Python实现批量数据提取”,在日常操作中,相信很多人在怎么通过Python实现批量数据提取问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么通过Python实现批量数据提取”的疑...
    99+
    2023-07-05
  • python怎么读取excel一列数据
    python读取excel一列数据的方法:pandas库:导入库和读取文件。选择列并将其存储在data变量中。openpyxl库:加载文件和选择工作表。选择列并循环遍历单元格,将值存储在...
    99+
    2024-04-02
  • python读取json数据还原表格批量转换成html
    目录一、实操1.首先创建一个新的文档2.添加文本二、word转成html1.使用pydocx转换2.使用win32模块背景: 由于需要对ocr识别系统的表格识别结果做验证,通过返回的...
    99+
    2024-04-02
  • 怎么在python中使用faker库批量生成假数据
    这篇文章将为大家详细讲解有关怎么在python中使用faker库批量生成假数据,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。faker使用方法基本使用faker使用起来非常简单,我们看一下就...
    99+
    2023-06-08
  • python怎么读取excel文件的数据
    使用python读取excel文件数据的方法有6个步骤:安装第三方库(例如openpyxl或xlrd)。导入库。打开excel文件。获取工作表对象。读取单元格数据。遍历工作表以读取所有单...
    99+
    2024-04-02
  • mfc怎么读取数据生成图形
    MFC(Microsoft Foundation Classes)是用于开发Windows应用程序的一组C++类库。要读取数据并生成...
    99+
    2023-09-16
    mfc
  • 用Python实现批量生成法务函代码
    目录情境问题代码实现:总结情境问题 小王是一名法务专员,工作中会处理所在公司的侵权事件并向侵权方发送法务函。 他会按照【法务函模板.docx】 Word 文件给【封号名单.xlsx】...
    99+
    2024-04-02
  • Python实现读取大量Excel文件并跨文件批量计算平均值
    本文介绍基于Python语言,实现对多个不同Excel文件进行数据读取与平均值计算的方法。 首先,让我们来看一下具体需求:目前有一个文件夹,其中存放了大量Excel文件;文件名称是每...
    99+
    2023-02-02
    Python读取Excel Python计算平均值 Python Excel 平均值
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作