xlutils 库的装置
你好,我是悦创。
后面我分享了 Excel 的读写:Python 实现 Excel 的读写操作:https://bornforthis.cn/column/pyauto/auto_base05.html
需要
往“虚伪用户数据.xls”外面,追加额定的 50 条用户数据,就是 题目 + 数据,达到 150 条。
思路
- xlrd 是读取 Excel 文件的库
- xlwt 是写入 Excel 的库
如果应用以上两个库,能够一边读取,一边写入新文件。
不过在此,有另一个方便使用的库,库名是 xlutils,装置命令:pip install xlutils
。
pip install xlutils
装置好之后,开始写代码,实现追加 50 条数据的需要。
书写代码
- 导入所需的库,别离是 xlrd 和 xlutils
import xlrd
from xlutils.copy import copy
- 应用 xlrd 关上文件,而后 xlutils 赋值关上后的 workbook,如下代码:
wb = xlrd.open_workbook('虚伪用户数据.xls', formatting_info=True)
xwb = copy(wb)
wb 对象是 workbook,xwb 也是 workbook,然而后者能够写操作,前者不能够。
- 有了 workbook 之后,就开始指定 sheet,并获取这个 sheet 的总行数。
sheet = xwb.get_sheet('第一个 sheet')
rows = sheet.get_rows()
length = len(rows)
print(length) # 输入 100
指定名称为“第一个 sheet”的 sheet,而后获取全副的行,并输入总量,就失去了 sheet 中有 100 行。
- 有了具体的行数,而后保障原有数据不变动的状况下,从第 101 行写数据。101 行的索引是 100,索引循环的起始数值是 100。
import faker
fake = faker.Faker()
for i in range(len(rows), 150):
sheet.write(i, 0, fake.first_name() + ' ' + fake.last_name())
sheet.write(i, 1, fake.address())
sheet.write(i, 2, fake.phone_number())
sheet.write(i, 3, fake.city())
range 函数,从 len(rows)
开始,到 150-1
完结,共 50 条。faker 库是制作虚伪数据的,这个在后面写数据有用过,循环写入了 50 条。
- 最初保留就能够了
xwb.save('虚伪用户数据.xls')
应用 xwb,也就是操作之后的 workbook 对象,间接保留原来的文件名就能够了。
Office 办公软件查看数据后果
最初应用 Excel 软件关上这个 xls 文件,查看数据有多少行,如下代码:
总共 150 行,原有数据 100 行,加上新写入的 50 行,数据没问题。
将以上的代码,合并起来屡次运行,“虚伪用户数据.xls”的数据量会逐渐减少,运行一次减少 50 行。
xlutils 是 xlrd+xlwt
的操作合集,但又不等于他们相加。库不一样,实现的操作不一样,所需的场景也不同,不同的需要用不同的库。
欢送关注我公众号:AI 悦创,有更多更好玩的等你发现!
::: details 公众号:AI 悦创【二维码】
:::
::: info AI 悦创·编程一对一
AI 悦创·推出辅导班啦,包含「Python 语言辅导班、C++ 辅导班、java 辅导班、算法 / 数据结构辅导班、少儿编程、pygame 游戏开发」,全部都是一对一教学:一对一辅导 + 一对一答疑 + 安排作业 + 我的项目实际等。当然,还有线下线上摄影课程、Photoshop、Premiere 一对一教学、QQ、微信在线,随时响应!微信:Jiabcdefh
C++ 信息奥赛题解,长期更新!长期招收一对一中小学信息奥赛集训,莆田、厦门地区有机会线下上门,其余地区线上。微信:Jiabcdefh
办法一:QQ
办法二:微信:Jiabcdefh