今天小编给大家分享一下Python如何使用xlrd和xlwt实现自动化操作Excel的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
xlrd:可以对xlsx、xls、xlsm文件进行读操作且效率高。
xlwt:主要对xls文件进行写操作且效率高,但是不能执行xlsx文件。
xlrd
是用来从Excel中读写数据的,但通常只用它进行读操作,写操作会相对于专门写入的模块麻烦一些。
xlwt
只能对Excel进行写操作。xlwt和xlrd不光名字像,连很多函数和操作格式也是完全相同。
在命令行或者终端中使用pip安装:
pip install Xlrd pip install xlwt
用xlrd进行读取比较方便,流程和手动操作Excel一样,打开工作簿(Workbook),选择工作表(sheets),然后操作单元格(cell)。
import xlrd df = xlrd.open_workbook(name)
导入模块后使用
open_workbook()
函数来读取指定的一个工作簿对象。这里参数name是Excel文件名字,一般使用的是相对路径的名字。
df.sheet_names()
读取文件,便可得到以列表形式嵌字符串的值。
table=df.sheets()[0] table=df.sheet_by_index(0) table=df.sheet_by_name('name')
第一行:获取第一个工作表,写法是根据内置的列表格式来选取的。
第二行:通过索引获取第一个工作表,这里的索引与
pandas
中DataFrame
的index
索引类似,只不过对象换成了工作表。第三行:通过表的名称选择工作表。
row=table.nrows col=table.ncols
这里不需要在函数后面加小括号
table.row_values(num1) table.column_values(num2)
for i in range(table.nrows): print (table.row_values(i))
cell1=table.row(0)[0].value cell1=table.cell(0,0).value cell1=table.col(0)[0].value
第一行:获取单元格值的方式是通过调取指定行数据进行筛选。
第二行:是以二维的形式获取,即(第i行,第j列)形式。
第三行:与第一行类似是通过列索引调用。
import xlwt df2 = xlwt.Workbook()
table2=df2.add_sheet('name') #name是工作表的名称
table2.write(0,0,'Python') #前两个参数对应(第i行,第j列),代表的是单元格的位置。第三个参数是要写的值(可以是字符串、数字)
df2.save('data2.xls')
PS:xlwt
仅支持.xls
的文件格式输出。
import xlrd # 1、打开工作本workbook xlsx = xlrd.open_workbook(r'.\t1.xlsx') # 2、打开需要操作的表sheet table = xlsx.sheet_by_index(0) # table = xlsx.sheet_by_name('t1') # 3、读取指定单元格的数据 print(table.cell_value(1,1)) print(table.cell(1,1).value) print(table.row(1)[1].value)
import xlwt # 1、新建一个工作本 new_workbook = xlwt.Workbook() # 2、为这个工作本中添加一个工作表 worksheet = new_workbook.add_sheet('new_test') # 3、向指定单元格写入内容 worksheet.write(0,0,'nt') # 4、保存 new_workbook.save('./nt.xls')
以上就是“Python如何使用xlrd和xlwt实现自动化操作Excel”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。