欢迎来到代码驿站!

当前位置:首页 >

Python自动创建Excel并获取内容

时间:2020-09-16 11:00:22|栏目:|点击:

用到了两个库,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')

[/code]

纠正在最后

代码是从两个Excel分别获取的,代码可以优化为1个Excel,数据放两个工作表。

上一篇:SpringBoot中配置Web静态资源路径的方法

栏    目:

下一篇:R语言ggplot2边框背景去除的实现

本文标题:Python自动创建Excel并获取内容

本文地址:http://www.codeinn.net/misctech/5028.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有