IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> excel读取和写入 -> 正文阅读

[大数据]excel读取和写入

excel文件的导入导出
不过这个依赖包读取大一点的文件非常慢

# workbook相关
from openpyxl.workbook import Workbook
# ExcelWriter,封装了很强大的excel写的功能
from openpyxl.writer.excel import ExcelWriter

from openpyxl.reader.excel import load_workbook

from zipfile import ZipFile, ZIP_DEFLATED


def write_to_excel(records, head_row, excel_name="save.xlsx"):
    """
      function:
       写入内容到excel文件
      Param:
       records: **records(二维数组),存储的文件内容
       head_row: *head_row,表头,标题
       excel_name: 保存的Excel文件名
      Return:
     """

    # 新建一个workbook
    wb = Workbook()
    archive = ZipFile(excel_name, 'w', ZIP_DEFLATED)
    # 新建一个excelWriter
    ew = ExcelWriter(workbook=wb, archive=archive)

    # 第一个sheet是ws
    ws = wb.worksheets[0]
    # 设置ws的名称
    ws.title = "range_name"
    # 写第一行,标题行(第一列为空),标题的数组都往后挪动一列
    for h_x in range(1, len(head_row) + 1):
        # 现在处于哪一列
        ws.cell(1, h_x, head_row[h_x-1])

    # 写第二行及其以后的那些行
    i = 2
    for record in records:
        for x in range(1, len(record) + 1):
            ws.cell(i, x, record[x-1])
        i += 1
    # 写文件
    ew.save()

    return


def read_excel(file):
    """
    :param file: 文件路径
    :return: **data_list(二维数组)
    """

    wb = load_workbook(file)

    # 取第一张表
    sheet_name = wb.get_sheet_names()
    ws = wb.get_sheet_by_name(sheet_name[0])

    # 建立存储数据的字典
    data_list = []

    for row in ws.rows:
        temp_list = []
        for cell in row:
            temp_list.append(cell.value)
        data_list.append(temp_list)
    return data_list
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-04-06 23:15:00  更:2022-04-06 23:18:12 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 5:23:47-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码