python3excel读、写、修改操作[Python基础]

python

python3上Excel文件操作的库比较多,新手一开始不知道如何选择合适的库,故整理如下:

  • xlwt: 只能写不能读,只支持python2.3到python2.7版本,只支持xls文件。

  • xlrd :只能读不能写

  • xlutils :修改并保存

  • openpyxl :可以实现对xlsx格式的读、写、修改,支持python3.x。个人推荐这个库

xlrd

# 打开文件

workbook1 = xlrd.open_workbook(user,formatting_info=False)

# 获取所有sheet

print("所有工作表:",workbook1.sheet_names())

sheet1 = workbook1.sheet_by_index(0)

# 获取整行的值

print(sheet1.row_values(0))

# 获取某个单元格的值,行、列下标均从0开始

print(sheet.cell_value(row,line))

xlutils

# 打开文件

workbook1 = xlrd.open_workbook(user,formatting_info=False)

workbook2 = copy(workbook1)

# xlutils 获取 sheet

sheet_new = workbook2.get_sheet(0)

# 单元格更新,行、列均下标均从0开始

sheet_new.write(row,line,"通过")

# 保存

workbook2.save("../testdata/result.xls")

Openpyxl

import openpyxl

filename="../testdata/user.xlsx"

# 1.打开文件

wb = openpyxl.load_workbook(filename,read_only=False)

print(wb.sheetnames)

# 2.选择工作表

ws = wb[wb.sheetnames[0]]

print(ws)

# 3.遍历单元格

for row in ws.rows:

for cell in row:

print(cell.value)

# 4.存储数据

# 方式一:数据可以直接分配到单元格中(可以输入公式)

ws["A1"] = 42

ws.cell(row=1,column=2, value="test")

# 方式二:可以附加行,从第一列开始附加(从最下方空白处,最左开始)(可以输入多行)

ws.append([1, 2, 3])

# 方式三:Python 类型会被自动转换

ws["A3"] = datetime.datetime.now().strftime("%Y-%m-%d")

# 5.保存数据

wb.save("文件名称.xlsx")

参考:http://www.52codes.net/develop/shell/58896.html

以上是 python3excel读、写、修改操作[Python基础] 的全部内容, 来源链接: utcz.com/z/530448.html

回到顶部