Python使用策略模式和openpyxl库创建Excel文件并追加内容

python 复制代码
from openpyxl import load_workbook

# 数据数组
data = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

# 打开现有的 Excel 文件
excel_file = 'sheetApend_example.xlsx'
wb = load_workbook(excel_file)

# 选择要追加数据的工作表
sheet_name = 'test_Sheet2'  # 指定要追加数据的工作表名称
sheet = wb[sheet_name]

# 追加数据到工作表末尾
for row in data:
    sheet.append(row)

# 保存修改后的 Excel 文件
wb.save(excel_file)
python 复制代码
import openpyxl
from openpyxl import load_workbook
from openpyxl.styles import Font, PatternFill, Alignment


class ExcelManager():
    def createExcel(self, filename, sheetName,headers ):
        pass
    def appendDataToExcel(self, filename, sheetName,content ):
        pass


class CreateExcelManager(ExcelManager):
    def createExcel(self, filename, sheetName,headers ):
        # 创建一个新的Excel工作簿
        wb = openpyxl.Workbook()

        # 获取默认的活动工作表
        sheet = wb.active

        # 定义表头数据
        headers = headers

        # 将表头数据写入第一行
        sheet.append(headers)
        # 将表头数据写入第一行,并设置字体加粗
        header_row = sheet[1]
        for cell in header_row:
            cell.font = Font(bold=True)
            cell.fill = PatternFill(start_color="FFC000", end_color="FFC000", fill_type="solid")  # 设置为橙色背景
            cell.alignment = Alignment(horizontal='center', vertical='center')  # 居中对齐

        # 修改默认的工作表名称
        sheet.title = sheetName

        # 保存Excel文件
        wb.save(filename)

        print(f"Excel文件 {filename} 创建成功")

class ApendDataToExcelManager(ExcelManager):
    def appendDataToExcel(self, filename, sheetName,content ):
        # 数据数组
        # data = [
        #     [1, 2, 3],
        #     [4, 5, 6, 7],
        #     [7, 8, 9]
        # ]
        data = content
        # 打开现有的 Excel 文件
        excel_file = filename
        wb = load_workbook(excel_file)

        # 选择要追加数据的工作表
        sheet_name = sheetName  # 指定要追加数据的工作表名称
        sheet = wb[sheet_name]

        # 追加数据到工作表末尾
        for row in data:
            sheet.append(row)

        # 保存修改后的 Excel 文件
        wb.save(excel_file)

        print(f"Excel文件 {filename} 追加内容成功")



file_Name = 'excel_example.xlsx'
sheet_name = 'test_sheet1'  # 指定要追加数据的工作表名称
headers = ['A', 'B','C','D']

data = [
    [1, 2, 3],
    [4, 5, 6, 7],
    [7, 8, 9],
    ['a','b','N/A',' ','e']
]

createExcelManager = CreateExcelManager()
createExcelManager.createExcel(file_Name,sheet_name,headers)

apendDataToExcelManager = ApendDataToExcelManager()
apendDataToExcelManager.appendDataToExcel(file_Name,sheet_name,data)

Excel文件 excel_example.xlsx 创建成功

Excel文件 excel_example.xlsx 追加内容成功

相关推荐
Humbunklung5 分钟前
Rust方法语法:赋予结构体行为的力量
开发语言·后端·rust
萧曵 丶11 分钟前
Rust 内存结构:深入解析
开发语言·后端·rust
Tomorrow'sThinker13 分钟前
[特殊字符] Excel 读取收件人 + Outlook 批量发送带附件邮件 —— Python 自动化实战
python·excel·outlook
算法练习生17 分钟前
Qt核心类QWidget及其派生类详解
开发语言·c++·qt
JosieBook19 分钟前
【Java编程动手学】Java常用工具类
java·python·mysql
1024小神33 分钟前
tauri项目在windows上的c盘没有权限写入文件
c语言·开发语言·windows
老虎062741 分钟前
数据结构(Java)--位运算
java·开发语言·数据结构
yanjiaweiya42 分钟前
云原生-集群管理续
java·开发语言·云原生
Swift社区42 分钟前
Swift 解 LeetCode 320:一行单词有多少种缩写可能?用回溯找全解
开发语言·leetcode·swift
写不出来就跑路1 小时前
暑期实习感悟与经验分享:从校园到职场的成长之路
java·开发语言·经验分享·spring boot