6000字长文,带你用Python完成 “Excel合并(拆分)” 的各种操作!(二)

简介: 6000字长文,带你用Python完成 “Excel合并(拆分)” 的各种操作!(二)

3. xlsxwriter模块知识点讲解

xlsxwriter模块一般是和xlrd模块搭配使用的,

xlsxwriter:负责写入数据,

xlrd:负责读取数据。

接下来,我们分别对这两个库的常见用法,进行介绍。


1)如何创建一个“工作簿”?

import xlsxwriter
# 这一步相当于创建了一个新的"工作簿";
# "demo.xlsx"文件不存在,表示新建"工作簿";
# "demo.xlsx"文件存在,表示新建"工作簿"覆盖原有的"工作簿";
workbook = xlsxwriter.Workbook("demo.xlsx")
# close是将"工作簿"保存关闭,这一步必须有,否则创建的文件无法显示出来。
workbook.close()


2)如何添加一个“Sheet工作表”

我们知道,一个Excel文件就是一个Excel工作簿,而每一个工作簿中,又有很多的“Sheet工作表”。接下来,我们如何用代码实现这个操作呢?


import xlsxwriter
# 这一步相当于创建了一个新的"工作簿";
# "demo.xlsx"文件不存在,表示新建"工作簿";
# "demo.xlsx"文件存在,表示新建"工作簿"覆盖原有的"工作簿";
workbook = xlsxwriter.Workbook("demo.xlsx")
# close是将"工作簿"保存关闭,这一步必须有,否则创建的文件无法显示出来。
workbook.close()


效果如下:

image.png


3)如何向表中插入数据呢?

import xlsxwriter
# 创建一个名为【demo.xlsx】工作簿;
workbook = xlsxwriter.Workbook("demo.xlsx")
# 创建一个名为【2018年销售量】工作表;
worksheet = workbook.add_worksheet("2018年销售量")
# 使用write_row方法,为【2018年销售量】工作表,添加一个表头;
headings = ['产品','销量',"单价"] 
worksheet.write_row('A1',headings)
# 使用write方法,在【2018年销售量】工作表中插入一条数据;
# write语法格式:worksheet.write(行,列,数据) 
data = ["苹果",500,8.9]
for i in range(len(headings)):
    worksheet.write(1,i,data[i]) 
workbook.close()


效果如下:

image.png

4. xlrd模块知识点讲解

这里有一个工作簿“test.xlsx”,该文件中有两个“Sheet工作表”,分别命名为“2018年销售量”、“2019年销售量”,如图所示。

image.png


1)如何打开一个“工作簿”?—>open_workbook()

# 这里所说的"打开"并不是实际意义上的打开,只是将该表加载到内存中打开。
# 我们并看不到"打开的这个效果"
import xlrd 
file = r"G:\Jupyter\test.xlsx"
xlrd.open_workbook(file)


结果如下:


<xlrd.book.Book at 0x29bb8e4eda0>


2)如何获取一个工作簿下,所有的“Sheet表”名?—>sheet_names()

import xlrd
file = r"G:\Jupyter\test.xlsx"
fh = xlrd.open_workbook(file)
fh.sheet_names()


结果如下:


['2018年销售量', '2019年销售量']


3)如何获取所有“Sheet表”的对象列表?—>sheets()

import xlrd
file = r"G:\Jupyter\test.xlsx"
fh = xlrd.open_workbook(file)
fh.sheets()


结果如下:


[<xlrd.sheet.Sheet at 0x29bb8f07a90>, <xlrd.sheet.Sheet at 0x29bb8ef1390>]


我们可以利用索引,获取每一个sheet表的对象,然后可以针对每一个对象,进行操作。


fh.sheets()[0]
<xlrd.sheet.Sheet at 0x29bb8f07a90>
fh.sheets()[1]
<xlrd.sheet.Sheet at 0x29bb8ef1390>


相关文章
|
9天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
44 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
1月前
|
数据处理 Python
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
这篇文章介绍了如何使用Python读取Excel文件中的数据,处理后将其保存为txt、xlsx和csv格式的文件。
45 3
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
|
24天前
|
Python
python读写操作excel日志
主要是读写操作,创建表格
50 2
|
1月前
|
Python
Python 自动化操作 Excel - 02 - xlwt
Python 自动化操作 Excel - 02 - xlwt
40 14
|
1月前
|
Python
Python 自动化操作 Excel - 03 - xlutils
Python 自动化操作 Excel - 03 - xlutils
35 13
|
1月前
|
IDE 开发工具 数据安全/隐私保护
Python编程--实现用户注册信息写入excel文件
Python编程--实现用户注册信息写入excel文件
|
1月前
|
索引 Python
Excel学习笔记(一):python读写excel,并完成计算平均成绩、成绩等级划分、每个同学分数大于70的次数、找最优成绩
这篇文章是关于如何使用Python读取Excel文件中的学生成绩数据,并进行计算平均成绩、成绩等级划分、统计分数大于70的次数以及找出最优成绩等操作的教程。
59 0
|
1月前
|
存储 Python
Python实战项目Excel拆分与合并——合并篇
Python实战项目Excel拆分与合并——合并篇
|
1月前
|
存储 Python 容器
Python实战项目:Excel拆分与合并
Python实战项目:Excel拆分与合并
|
1月前
|
自然语言处理 搜索推荐 程序员
【Python】如何使用pip,安装第三方库和生成二维码、操作Excel
【Python】如何使用pip,安装第三方库和生成二维码、操作Excel
41 0