Python自动创建Excel并获取内容
作者:Fishccc 时间:2023-12-31 01:42:07
用到了两个库,xlrd和xlwt
xlrd是读excel,xlwt是写excel的库[/code]
1)xlwd用到的方法:
xlwt.Workbook()是创建了一个空文件对象
.add_sheet()为空文件对象,是在该文件中建立一个工作表,并返回工作表对象
.write(row,col,data)为工作表对象,表示在第row+1行第col列添加data数据
.save('文件名.xls')为空文件对象,最后保存。
2)xlrd用到的方法:
打开excel文件读取数据
data = xlrd.open_workbook('文件名.xls')
常用代码:
#通过名称获取 table = data.sheet_by_name(u'Sheet1')
获取整行和整列的值(数组)
table.row_values(i)
table.col_values(i)
获取行数和列数
nrows = table.nrows
ncols = table.ncols
下面是就是实现代码
import xlwt
import xlrd
# 一:.Workbook 创建工作簿,目前空白
testbook = xlwt.Workbook(encoding='utf-8')
# 二:创建sheet页即工作表,对象是工作簿
test_sheet = testbook.add_sheet('新新人类')
# 三:写入数据,1、下面是从别的文件读取的数据,所以先打开一个文件
data1 = xlrd.open_workbook('C:\\Users\\ccccc\\Documents\\Python学习笔记\\新新人类模板.xls')
# 2、再打开工作表
table1 = data1.sheet_by_name(u'Sheet1')
# 3、row_values 获取这个工作表第0行的整行数据,返回数组类型
name1 = table1.row_values(0)
# 4、获取这个工作表的列数,返回int
nrows1 = table1.ncols
# 5、下面循环把第0行所有列的数据的依次写入之前创建的工作表test_sheet
for j in range(nrows1):
# 6、写入数据,write(row,col,data)为工作表对象,表示在第row+1行第col列添加data数据
test_sheet.write(0, j, name1[j])
# 四:保存文件名,下面是从别的文件获取文件名
data = xlrd.open_workbook('C:\\Users\\ccccc\\Documents\\Python学习笔记\\新新人类编号.xls')
table = data.sheet_by_name(u'Sheet1')
name = table.col_values(0)
bank = table.col_values(1)
nrows = table.nrows
for i in range(nrows):
bank1 = bank[i]
# 把返回的数组里的每个先赋值变量bank1,再截取字符串的前4个,这里可以先加个判断是否有4位,否则不足4位会报错
bank2 = bank1[0:4]
# 四、save保存文件
testbook.save('C:\\Users\\ccccc\\Documents\\Python学习笔记\\'+'新新-'+name[i]+'-'+bank2+'-.xls')
纠正在最后
代码是从两个Excel分别获取的,代码可以优化为1个Excel,数据放两个工作表。
来源:https://www.cnblogs.com/docstrange/p/13511879.html
标签:Python,创建,Excel
0
投稿
猜你喜欢
Python实现pdf文档转txt的方法示例
2021-12-08 19:16:16
call在Python中改进数列的实例讲解
2021-10-12 17:17:20
Python高级特性之切片迭代列表生成式及生成器详解
2021-06-25 23:10:13
Django REST framework 视图和路由详解
2022-10-16 00:29:32
python实现ftp文件传输功能
2023-04-21 13:20:16
JS合并数组的几种方法及优劣比较
2024-06-05 10:02:00
Python延时操作实现方法示例
2023-08-25 04:04:50
利用Python绘画双摆操作分享
2022-12-08 21:30:36
go smtp实现邮件发送示例详解
2023-06-23 22:05:14
Java正则表达式循环匹配字符串方式
2023-07-25 03:29:48
在JS循环中使用async/await的方法
2024-05-02 16:19:14
python操作yaml说明
2022-03-05 14:47:43
Python入门篇之字符串
2022-01-09 00:31:17
SQL Server日期加减函数DATEDIFF与DATEADD用法分析
2024-01-21 12:06:11
如何处理包含JavaScript语句时的间隔符?
2009-11-14 20:39:00
python 切换root 执行命令的方法
2021-10-16 22:33:43
Python with语句用法原理详解
2023-05-01 08:17:27
如何隐藏IP地址的最后一位
2011-04-04 16:38:00
go语言编程实现递归函数示例详解
2024-02-09 14:35:44
Go 中的空白标识符下划线
2024-04-29 13:04:42