openpyxl对xlsx文件的读写操作

from openpyxl import load_workbook, Workbook

# 写一个新的xlsx
wb_xlsx = Workbook()
wb_xlsx.create_sheet(title='花名册',index=0)
ws_xlsx = wb_xlsx.active
# title
ws_xlsx.append(['a', 'b', 'c', 'd', 'e', 'f'])
for i in range(6):
    ws_xlsx.append([1,2,3,4,5,6])
wb_xlsx.save(filename='openpyxl_file.xlsx')

追加单元表

wb = load_workbook('openpyxl_file.xlsx')
wb.create_sheet(title='Word',index=0)
ws = wb.active
# title
ws.append(['a', 'b', 'c', 'd', 'e', 'f'])
for i in range(3):
    ws.append([1,1,1,1,1,1])
wb.save(filename='openpyxl_file.xlsx')

第一种方式用openpyxl读

# 读取xlsx文件
workbook = load_workbook('D:\\sbd\\baidu\\openpyxl_file.xlsx')
# 可以使用workbook对象的sheetnames属性获取到excel文件中哪些表有数据
sheetnames = workbook.sheetnames
print(sheetnames)
# 默认只能获取第一个工作表
table = workbook.active
for sheetname in sheetnames:
    table = workbook[sheetname] 
    # table = workbook.get_sheet_by_name(sheetname)
    rows = table.max_row
    cols = table.max_column

    for row in range(rows):
        for col in range(cols):
            data = table.cell(row + 1, col + 1).value
            print(data, end=' ')

pandas读

# pandas读取方式
import pandas as pd
result_a = pd.read_excel(r'./openpyxl_file.xlsx', sheet_name=sheetnames)
for sheetname in sheetnames:
    result_a[sheetname].fillna('',inplace=True)
    for res in result_a[sheetname].index.values:
        row = result_a[sheetname].loc[res,result_a[sheetname].columns.values].to_dict()
        print(row)

追加

# 追加xlsx文件
wb = load_workbook('D:\\sbd\\baidu\\openpyxl_file.xlsx')
sheet1 = wb['Word']
# 复制工作表并新建名为复制工作表的工作表
sheet2 = wb.copy_worksheet(sheet1)
sheet2.title = "复制工作表"
# for i in range(3):
#     sheet1.append([3,3,3,3,3,3])
wb.save(filename='openpyxl_file.xlsx')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值