python 多表拆分

openpyxl 是一个用于读取、写入和操作 Excel 文件(.xlsx 格式)的 Python 库。以下是一些示例用法:

#迭代遍历工作表中的行和列
from openpyxl import load_workbook
wb = load_workbook(‘example.xlsx’)
ws = wb.active
#遍历行
for row in ws.iter_rows(values_only=True):
print(row)
#遍历列
for col in ws.iter_cols(max_col=2, values_only=True):
print(col)

举例如下:
#导入load_workbook,Workbook包
from openpyxl import load_workbook, Workbook
#修改工作目录至对应的文件夹,拆分后的文件会被保存至此目录
import os

#临时修改工作路径,作为拆分后的文件存储的地方
os.chdir(r"E:\pythonProject\交易对手")

#导入需要拆分的Excel,赋值给wb
wb = load_workbook(r"E:\pythonProject\机构关联方信息20231130.xlsx")
sheetnames = wb.sheetnames

#得到excel中的每个sheet名
for name in sheetnames:
ws = wb.get_sheet_by_name(name)
print(ws)

# 创建新的Excel
wb2 = Workbook()
# 获取当前sheet,调用正在运行的工作表
ws2 = wb2.active

# 两个for循环遍历整个excel的单元格内容
# enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
for i, row in enumerate(ws.iter_rows()):
    for j, cell in enumerate(row):#行
        # 写入新Excel
        ws2.cell(row=i + 1, column=j + 1, value=cell.value)
        # 设置新Sheet的名称
        ws2.title = 'sheet1'
# for r in [1,2,3]:  # rowd格式如:[1,3,5],表示要删除第1、3、5共三行。
#     ws2.delete_rows(r)
ws2['A1'] = 'itname'
ws2['B1'] = 'creditcode'
wb2.save(name + ".xlsx")

#重置工作目录至原始目录
os.chdir(r"E:\pythonProject")

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值