一、–xls–
1.xlwt
新建 Excel 写入数据
写入excel无所谓用哪个,后缀改一下就可以了。
主要用xlwt处理xls
import xlwt
def datas\_2\_excel\_xls(datas,file_path):
# 创建一个Workbook对象,这就相当于创建了一个Excel文件
workbook = xlwt.Workbook(encoding="utf-8", style_compression=0)
# 添加一个工作表
worksheet = workbook.add_sheet('Sheet1', cell_overwrite_ok=True)
for row in range(len(datas)):
for col in range(len(datas[0])):
worksheet.write(row, col, datas[row][col])
# 保存为Excel文件
workbook.save(file_path)
if __name__ == '\_\_main\_\_':
demo_datas = [
['Number', 'Batch', 'ID'],
[2, 'A', '001'],
[4, 'B', '002'],
[6, 'A', '003'],
[8, 'C', '004']
]
file_path = 'example.xls'
datas_2_excel_xls(demo_datas,file_path)
2.xlrd
读取Excel 数据
import xlrd
def read\_xls\_xlrd(file_path):
# 打开 Excel 文件
workbook = xlrd.open_workbook(file_path)
# 选择工作簿中的一个工作表
worksheet = workbook.sheet_by_index(0) # 通过索引选择,0 表示第一个工作表
# 或者
# worksheet = workbook.sheet\_by\_name('Sheet1') # 通过名称选择工作表
# 获取工作表的行数和列数
rows = worksheet.nrows
cols = worksheet.ncols
datas = []
# 1.遍历工作表,获取每行的内容,按行
for i in range(rows):
data = worksheet.row_values(i) # 打印整行内容
datas.append(data)
# #2.遍历工作表每个数据,按单元格
# for i in range(rows):
# data = []
# for j in range(cols):
# data.append(worksheet.cell\_value(i,j))
# datas.append(data)
# print(datas)
# # 也可以获取特定单元格的内容
# cell\_value = worksheet.cell\_value(0, 0) # 获取第一行第一列的单元格内容
# print(cell\_value)
return datas
if __name__ == '\_\_main\_\_':
file_path = 'example.xls'
req_datas = read_xls_xlrd(file_path)
print(req_datas)
二、–xlsx–
处理xlsx有两个都可以用
1.xlsxwriter
2.openpyxl
1.xlsxwriter
xlsxwriter 是一个用于创建和写入 Excel 2010 xlsx 文件的 Python 模块。它提供了一个用于写入 Excel
文件的简单接口,支持创建工作簿、工作表、设置单元格样式、合并单元格等功能。与 openpyxl 不同,xlsxwriter
主要用于写入数据到 Excel 文件,而不是读取或修改现有文件。
1️⃣读取 Excel 数据(没办法)
2️⃣新建 Excel 写入数据
import xlsxwriter
def datas\_2\_excel\_xlsx\_xlsxwriter(datas,file_path):
wb = xlsxwriter.Workbook(file_path)
sheet = wb.add_worksheet('Sheet1')
# 样式设置
format1 = {
'font\_name': '宋', # 字体
'font\_size': 10, # 字体大小
'font\_color': 'black