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

相关推荐
做程序员的第一天2 分钟前
RKNPU2从入门到实践 --- 【4】RKNN 模型构建【使用pycharm一步一步搭建RKNN模型】
linux·ide·人工智能·python·pycharm·rk3588·rknpu
io无心18 分钟前
若依AjaxResult的get(AjaxResult.CODE_TAG)有时返回的200,有时返回的字符串“200“
java·开发语言
CN.LG23 分钟前
浅谈Sql Server 增删改查
java·开发语言·数据库
殇尘24 分钟前
go 使用 gitlab 搭建私有化模块系统
开发语言·golang·gitlab
2402_8575893644 分钟前
编织网络之魂:Ruby网络编程指南
开发语言·网络·ruby
weixin_711800881 小时前
C语言重难点总结(2)-指针操作与结构体、动态内存
c语言·开发语言
IT毕设梦工厂1 小时前
计算机毕业设计选题推荐-高校学术交流平台-Java/Python项目实战
java·spring boot·python·django·毕业设计·源码·课程设计
zhangbin_2371 小时前
【Python机器学习】NLP词中的数学——词袋
开发语言·人工智能·python·机器学习·自然语言处理
兴焉1 小时前
【Python学习手册(第四版)】学习笔记22-模块代码编写基础
笔记·python·学习
程序员小予1 小时前
Python编程的终极十大工具(非常详细)零基础入门到精通,收藏这一篇就够了
开发语言·python·计算机网络·安全·web安全·网络安全·系统安全