Python自动创建Excel并获取内容
用到了两个库,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
下面是就是实现代码
importxlwt importxlrd #一:.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 forjinrange(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 foriinrange(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,数据放两个工作表。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。