首页 > 编程 > Python > 正文

Python3 读、写Excel文件的操作方法

2020-02-15 23:18:03
字体:
来源:转载
供稿:网友

首先,简单介绍一下EXECL中工作簿和工作表的区别:

工作簿的英文是BOOK(WORKBOOK),工作表的英文是SHEET(WORKSHEET)。

•一个工作簿就是一个独立的文件
•一个工作簿里面可以有1个或者多个工作表
•工作簿是工作表的集合

1:使用python实现对Excel文件的读写,首先需要安装专用的模块(可以自己编写)xlrd,xlwt模块

2:读取excel数据(注意事项:sheet编号,行号,列号都是从索引0开始)

import xlrd# 设置路径path = 'E:/input.xlsx'# 打开execlworkbook = xlrd.open_workbook(path)# 输出Excel文件中所有sheet的名字print(workbook.sheet_names())# 根据sheet索引或者名称获取sheet内容Data_sheet = workbook.sheets()[0] # 通过索引获取# Data_sheet = workbook.sheet_by_index(0) # 通过索引获取# Data_sheet = workbook.sheet_by_name(u'名称') # 通过名称获取print(Data_sheet.name) # 获取sheet名称rowNum = Data_sheet.nrows # sheet行数colNum = Data_sheet.ncols # sheet列数# 获取所有单元格的内容list = []for i in range(rowNum): rowlist = [] for j in range(colNum): rowlist.append(Data_sheet.cell_value(i, j)) list.append(rowlist)# 输出所有单元格的内容for i in range(rowNum): for j in range(colNum): print(list[i][j], '/t/t', end="") print()# 获取整行和整列的值(列表)rows = Data_sheet.row_values(0) # 获取第一行内容cols = Data_sheet.col_values(1) # 获取第二列内容# print (rows)# print (cols)# 获取单元格内容cell_A1 = Data_sheet.cell(0, 0).valuecell_B1 = Data_sheet.row(0)[1].value # 使用行索引cell_C1 = Data_sheet.cell(0, 2).valuecell_D2 = Data_sheet.col(3)[1].value # 使用列索引print(cell_A1, cell_B1, cell_C1, cell_D2)# 获取单元格内容的数据类型# ctype:0 empty,1 string, 2 number, 3 date, 4 boolean, 5 errorprint('cell(0,0)数据类型:', Data_sheet.cell(0, 0).ctype)print('cell(1,0)数据类型:', Data_sheet.cell(1, 0).ctype)print('cell(1,1)数据类型:', Data_sheet.cell(1, 1).ctype)print('cell(1,2)数据类型:', Data_sheet.cell(1, 2).ctype)# 获取单元格内容为日期的数据date_value = xlrd.xldate_as_tuple(Data_sheet.cell_value(1,0),workbook.datemode)print(type(date_value), date_value)print('%d:%d:%d' % (date_value[0:3]))

3:创建excel并写入数据

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表