zoukankan      html  css  js  c++  java
  • paython使用openpyxl处理excel

    有哪些python处理excel的教程:https://www.zhihu.com/question/35904647

    知乎专栏:https://www.zhihu.com/people/mars-15-29/columns

    openpyxl官方文档:https://openpyxl.readthedocs.io/en/stable/charts/area.html

    from openpyxl import Workbook
    from openpyxl import load_workbook
    import random
    
    # 新建excel
    def new_excel():
        # 实例化
        wb = Workbook()
        # 激活 worksheet
        ws = wb.active
        # 保存表格
        wb.save("test.xlsx")
    
    # 打开excel
    def open_excel():
        wb2 = load_workbook("test.xlsx")
        print(wb2.sheetnames)
    
    # 新建工作簿
    def new_sheet():
        wb = Workbook()
        ws = wb.active
    
        # 新建的工作簿插到末尾
        ws1 = wb.create_sheet("Myshee1")
        print(wb.sheetnames)
    
        # 新建的工作簿插到首部
        ws2 = wb.create_sheet("Mysheet2", 0)
        print(wb.sheetnames)
    
        # 新建的工作簿插到倒数第二个位置
        ws3 = wb.create_sheet("Mysheet3", -1)
        print(wb.sheetnames)
    
        wb.save("new_sheet.xlsx")
    
    # 更新工作簿
    def update_sheet():
        wb = Workbook()
    
        ws = wb.active
        print(wb.sheetnames)
    
        ws.title = "New Title"
        print(wb.sheetnames)
    
        wb.save("update_sheet.xlsx")
    
    # excel添加单列
    def insert_excel_data():
        wb = Workbook()
        ws = wb.active
    
        ws['A4'] = 10
        c=ws['A4'].value
        print(c)
    
        d=ws.cell(4,2,1000)
        print(d.value)
    
        wb.save("insert_excel_data.xlsx")
    
    # excel添加多列
    def insert_excel_datas():
        wb = Workbook()
        ws = wb.active
    
        for i in range(1, 40):
            for j in range(1, 60):
                ws.cell(i, j, random.randint(0, 60))
    
        # 使用切片访问
        range_data = ws['A1':'D40']
    
        # 使用列访问
        colC = ws['C']
        col_range = ws['C:D']
    
        # 使用行访问
        row10 = ws[10]
        row_range = ws[5:10]
    
        wb.save("update_excel_datas.xlsx")
    
    # 插入行和列
    def insert_excel_rows_cols():
        wb = load_workbook("update_excel_datas.xlsx")
        ws = wb.active
        # 默认值为1行或1列。例如,在第7行(在现有第7行之前)插入1行:
        ws.insert_rows(7)
        # 例如,在第H列(在现有第H列之前)插入3列。
        ws.insert_cols(8, 3)
        wb.save("insert_excel_rows_cols.xlsx")
    
    # 删除行和列
    def delete_excel_rows_cols():
        wb = load_workbook("update_excel_datas.xlsx")
        ws = wb.active
        # 从col == idx删除一列或多列
        # 例如,删除列F:H
        ws.delete_cols(6, 3)
        # 从row == idx删除一行或多行
        # 例如,删除行F:H
        ws.delete_rows(6, 3)
        wb.save("delete_excel_rows_cols.xlsx")
    
    # 数学计算
    def sum_and_average():
        wb = load_workbook("update_excel_datas.xlsx")
        ws = wb.active
    
        for i in range(1, 40):
            for j in range(1, 60):
                ws.cell(i, j, random.randint(0, 60))
    
        ws['F45'] = "=SUM(B1:F39)"
        ws['F46'] = "=AVERAGE(B2:D30)"
    
        wb.save("sum_and_average.xlsx")
    
    def test():
        print("test")
    
    if __name__ == '__main__':
        test()
    

      

    openpyxl_chart_demos(openpyxl三:图表相关操作:创建图表、使用轴、图表布局)

    https://blog.csdn.net/weixin_44015805/article/details/103392673

  • 相关阅读:
    【python爬虫实战】使用词云分析来分析豆瓣影评数据
    【python爬虫实战】爬取豆瓣影评数据
    【个人博客设计】开发工具篇
    使用xmake优雅地描述工程
    使用lua实现try-catch异常捕获
    tbox新增stackless协程支持
    如何快速构建一个简单的程序
    手写数字识别系统之倾斜矫正
    手写数字识别系统之图像分割
    聊聊原子操作那些事
  • 原文地址:https://www.cnblogs.com/cxscode/p/14714359.html
Copyright © 2011-2022 走看看