文章目录
- 安装openpyxl: pip install openpyxl 写入XLSX文件: from openpyxl import Workbook # 创建工作簿 wb = Workbook() ws = wb.active # 写入数据 ws[‘A1’] = “姓名” ws[‘B1’] = “年龄” ws[‘A2’] = “张三” ws[‘B2’] = 25 # 保存文件 wb.save(“example.xlsx”) 读取XLSX文件: from openpyxl import load_workbook # 加载工作簿 wb = load_workbook(“example.xlsx”) ws = wb.active # 读取数据 for row in ws.iter_rows(values_only=True): print(row)
- 安装pandas: pip install pandas openpyxl 写入XLSX文件: import pandas as pd # 创建DataFrame data = {‘姓名’: [‘张三’, ‘李四’], ‘年龄’: [25, 30]} df = pd.DataFrame(data) # 写入文件 df.to_excel(“example.xlsx”, index=False) 读取XLSX文件: import pandas as pd # 读取文件 df = pd.read_excel(“example.xlsx”) print(df)
目录
- 读写XLSX文件的方法
- 使用openpyxl库
- 使用pandas库
- 处理大型XLSX文件
- 格式化单元格
- 处理多个工作表
- 总结
Python中可以使用openpyxl或pandas库来读写XLSX文件。
以下是两种方法的详细说明:
- 安装openpyxl:
pip install openpyxl
- 写入XLSX文件:
from openpyxl import Workbook
# 创建工作簿
wb = Workbook()
ws = wb.active
# 写入数据
ws['A1'] = "姓名"
ws['B1'] = "年龄"
ws['A2'] = "张三"
ws['B2'] = 25
# 保存文件
wb.save("example.xlsx")
- 读取XLSX文件:
from openpyxl import load_workbook
# 加载工作簿
wb = load_workbook("example.xlsx")
ws = wb.active
# 读取数据
for row in ws.iter_rows(values_only=True):
print(row)
- 安装pandas:
pip install pandas openpyxl
- 写入XLSX文件:
import pandas as pd
# 创建DataFrame
data = {'姓名': ['张三', '李四'], '年龄': [25, 30]}
df = pd.DataFrame(data)
# 写入文件
df.to_excel("example.xlsx", index=False)
- 读取XLSX文件:
import pandas as pd
# 读取文件
df = pd.read_excel("example.xlsx")
print(df)
对于大型XLSX文件,可以使用openpyxl的read_only模式或pandas的chunksize参数:
- 使用openpyxl读取大型文件:
from openpyxl import load_workbook
# 以只读模式加载
wb = load_workbook("large_file.xlsx", read_only=True)
ws = wb.active
# 逐行读取
for row in ws.iter_rows(values_only=True):
print(row)
- 使用pandas分块读取:
import pandas as pd
# 分块读取
chunk_size = 1000
for chunk in pd.read_excel("large_file.xlsx", chunksize=chunk_size):
print(chunk)
- 使用openpyxl格式化单元格:
from openpyxl.styles import Font, Alignment
wb = Workbook()
ws = wb.active
# 设置字体和对齐
ws['A1'].font = Font(bold=True)
ws['A1'].alignment = Alignment(horizontal="center")
wb.save("formatted.xlsx")
- 读写多个工作表:
from openpyxl import Workbook
wb = Workbook()
# 创建工作表
ws1 = wb.create_sheet("Sheet1")
ws2 = wb.create_sheet("Sheet2")
# 写入不同工作表
ws1['A1'] = "Sheet1数据"
ws2['A1'] = "Sheet2数据"
wb.save("multi_sheet.xlsx")
- 读取特定工作表:
from openpyxl import load_workbook
wb = load_workbook("multi_sheet.xlsx")
ws = wb["Sheet2"] # 获取指定工作表
print(ws['A1'].value)
以上为个人经验,希望能给大家一个参考,也希望大家多多支持风君子博客。
您可能感兴趣的文章:
- 如何在python中使用openpyxl库读写Excel.xlsx文件(有参考列程)
- python操作excel之openpyxl模块读写xlsx格式使用方法详解
- 使用python+pandas读写xlsx格式中的数据
- Python3读写Excel文件(使用xlrd,xlsxwriter,openpyxl3种方式读写实例与优劣)
- Python使用pandas和xlsxwriter读写xlsx文件的方法示例