博客
关于我
python3 读写Excel
阅读量:362 次
发布时间:2019-03-04

本文共 2059 字,大约阅读时间需要 6 分钟。

Python3 读写Excel

说明

对于 Excel 文件的读写操作,需要根据文件的格式选择合适的库进行处理:

  • 2007版以前的Excel(xls结尾):使用 xlrd 读取,xlwt 写入。
  • 2007版以后的Excel(xlsx结尾):使用 openpyxl 读写。

pypi 的地址

以下是相关库的安装地址:

openpyxl 文档地址

更多关于 openpyxl 的使用文档可以参考其官方网站:openpyxl 文档

举个栗子

以下是一个读写Excel的示例代码:

# 读写2003 excel
import xlrd
import xlwt
def write03Excel(path):
wb = xlwt.Workbook()
sheet = wb.add_sheet("2003测试表")
value = [
["名称", "价格", "出版社", "语言"],
["如何高效读懂一本书", "22.3", "机械工业出版社", "中文"],
["暗时间", "32.4", "人民邮电出版社", "中文"],
["拆掉思维里的墙", "26.7", "机械工业出版社", "中文"]
]
for i in range(len(value)):
for j in range(len(value[i])):
sheet.write(i, j, value[i][j])
wb.save(path)
print("写入数据成功!")
def read03Excel(path):
workbook = xlrd.open_workbook(path)
sheets = workbook.sheet_names()
worksheet = workbook.sheet_by_name(sheets[0])
for i in range(worksheet.nrows):
row = worksheet.row(i)
for j in range(worksheet.ncols):
print(worksheet.cell_value(i, j), "\t", end="")
print()
# 读写2007 excel
import openpyxl
def write07Excel(path):
wb = openpyxl.Workbook()
sheet = wb.active
sheet.title = '2007测试表'
value = [
["名称", "价格", "出版社", "语言"],
["如何高效读懂一本书", "22.3", "机械工业出版社", "中文"],
["暗时间", "32.4", "人民邮电出版社", "中文"],
["拆掉思维里的墙", "26.7", "机械工业出版社", "中文"]
]
for i in range(len(value)):
for j in range(len(value[i])):
sheet.cell(row=i+1, column=j+1, value=str(value[i][j]))
wb.save(path)
print("写入数据成功!")
def read07Excel(path):
wb = openpyxl.load_workbook(path)
sheet = wb.get_sheet_by_name('2007测试表')
for row in sheet.rows:
for cell in row:
print(cell.value, "\t", end="")
print()
# 示例使用
file_2003 = 'data/2003.xls'
file_2007 = 'data/2007.xlsx'
write03Excel(file_2003)
read03Excel(file_2003)
write07Excel(file_2007)
read07Excel(file_2007)

输出结果

以上代码示例展示了如何在 Python 中使用 xlrdxlwt 读写 2003 版本的 Excel 文件,以及如何使用 openpyxl 读写 2007 版本及以后版本的 Excel 文件。

转载地址:http://odvr.baihongyu.com/

你可能感兴趣的文章