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 追加内容成功

相关推荐
FL16238631293 小时前
[C#][winform]基于yolov8的水表读数检测与识别系统C#源码+onnx模型+评估指标曲线+精美GUI界面
开发语言·yolo·c#
cnxy1886 小时前
围棋对弈Python程序开发完整指南:步骤1 - 棋盘基础框架搭建
开发语言·python
落叶,听雪6 小时前
河南建站系统哪个好
大数据·人工智能·python
极客小云7 小时前
【生物医学NLP信息抽取:药物识别、基因识别与化学物质实体识别教程与应用】
python·机器学习·nlp
南_山无梅落7 小时前
12.Python3函数基础:定义、调用与参数传递规则
python
程序员-周李斌7 小时前
Java 死锁
java·开发语言·后端
JasmineWr8 小时前
CompletableFuture相关问题
java·开发语言
零雲8 小时前
java面试:知道java的反射机制吗
java·开发语言·面试
Jeremy爱编码8 小时前
实现 Trie (前缀树)
开发语言·c#
laocooon5238578868 小时前
插入法排序 python
开发语言·python·算法