你用过pandas+openpyxl吗?今天为大家分享一个Python自动化办公文档中,没有提到的知识点。

前言

用过Pandas和openpyxl库的同学都知道,这两个库是相互互补的。Pandas绝对是Python中处理Excel最快、最好用的库,但是使用openpyxl的一些优势是能够轻松地使用样式、条件格式等自定义电子表格。

如果你又想轻松的使用Pandas处理Excel数据,又想为Excel电子表格添加一些样式,应该怎么办呢?

但是您猜怎么着,您不必担心挑选。

事实上,openpyxl 支持将数据从Pandas的DataFrame转换为工作簿,或者相反,将openpyxl工作簿转换为Pandas的DataFrame。

DataFrame转工作簿

我们先创建一个DataFrame:

import pandas as pddata = {"姓名": ["张三", "李四"],"性别": ["男", "女"],"年龄": [15, 25],
}
df = pd.DataFrame(data)
df

结果如下:

如果想要给表头设置为红色字体,并居中,应该如何设置呢?

from openpyxl import Workbook
from openpyxl.utils.dataframe import dataframe_to_rows
from openpyxl.styles import Font
from openpyxl.styles import Alignment wb = Workbook()
ws = wb.activefor row in dataframe_to_rows(df, index=False, header=True):ws.append(row)font = Font(name="微软雅黑",size=10, bold=True,italic=False,color="FF0000")
alignment = Alignment(horizontal="center",vertical="center")for i in range(1,df.shape[1]+1):cell = ws.cell(row=1, column=i)print(cell.value)cell.font = fontcell.alignment = alignmentwb.save("pandas.xlsx")

结果如下:

工作簿转DataFrame

如果有这样一份数据,我们想将其转换为DataFrame,应该怎么做?

其实这个有点多此一举,我们直接使用pandas读取后,处理完数据,在进行样式设计不就行了吗?为何一开始非要使用openpyxl读取工作簿呢?

哈哈,但是既然openpyxl中提供了这种方法,我们就来看看。

import pandas as pd
from openpyxl import load_workbookwb = load_workbook(filename="df_to_openpyxl.xlsx")
ws = wb.activevalues = ws.values
df = pd.DataFrame(values)
df

结果如下:

各位伙伴们好,詹帅本帅搭建了一个个人博客和小程序,汇集各种干货和资源,也方便大家阅读,感兴趣的小伙伴请移步小程序体验一下哦!(欢迎提建议)

推荐阅读

牛逼!Python常用数据类型的基本操作(长文系列第①篇)

牛逼!Python的判断、循环和各种表达式(长文系列第②篇)

牛逼!Python函数和文件操作(长文系列第③篇)

牛逼!Python错误、异常和模块(长文系列第④篇)

Pandas与openpyxl库的 完美 融合!相关推荐

  1. Python 使用 pandas 和 openpyxl 读取 excel 表格(读取指定行和列)

    前言 在使用Python处理表格时,pandas 和 openpyxl是使用最多的两个库.现在我来简单记录一下这两个库在处理Excel表格时一些常用操作. 1.使用pandas操作excel表格 (1 ...

  2. Python中用pandas和openpyxl向Excel填入数据,不覆盖源数据和格式

    Python中用pandas和openpyxl向Excel填入数据,不覆盖源数据和格式 Python中处理Excel数据时,正常遇到需要Excel表中对几项数据统计后,填入源表对应的单元格里,平时我们 ...

  3. Excel融合分析——完美融合Excel和BI,真正赋能一线用户

    ​当今的大数据时代,随着企业数据量增长,如果还是完全依赖技术部门开发报表,会存在开发需求耗时长,无法灵活多维度分析且加重IT部门负担的问题,甚至繁琐的流程使得我们在瞬息万变的市场上与机遇失之交臂.用户 ...

  4. pandas关于查看库或依赖库版本的API原理

    概述 pandas中与库版本或依赖库版本相关的API主要有以下4个: pandas.__version__:查看pandas简要版本信息. pandas.__git_version__:查看panda ...

  5. Smartbi Excel融合分析——完美融合Excel和BI,真正赋能一线用户

    当今的大数据时代,随着企业数据量增长,如果还是完全依赖技术部门开发报表,会存在开发需求耗时长,无法灵活多维度分析且加重IT部门负担的问题,甚至繁琐的流程使得我们在瞬息万变的市场上与机遇失之交臂.用户需 ...

  6. Py之openpyxl:openpyxl库的简介、安装、使用方法之详细攻略

    Py之openpyxl:openpyxl库的简介.安装.使用方法之详细攻略 目录 openpyxl库的简介 openpyxl库的安装 openpyxl库的使用方法 openpyxl库的简介 openp ...

  7. openpyxl库,1秒合并多张表格并设置图表格式

    在日常办公中,我们经常有这样的需求,需要重复的合并表格数据,如果数据表不多,通常复制粘贴就足够了,要是有成百上千的表格需要合并,普通的Ctrl+C.Ctrl+V已经难以实现,那么就要考虑用代码去合并. ...

  8. python3openpyxl无法打开文件_Python3 处理excel文件(openpyxl库)

    openpyxl 介绍 openpyxl是一个用于读/写 XLSX/XLSM/XLTX/XLTM文件的python库.openpyxl(可读写excel表)专门处理Excel2007及以上版本产生的x ...

  9. Python3 openpyxl库

    Python3 openpyxl库 用于读取和写入 Excel 2010 xlsx/xlsm/xltx/xltm 文件.通过 pip install openpyxl 命令下载 openpyxl 库. ...

最新文章

  1. java hasfocus_Android·Focus机制解析和常见问题
  2. Win10 UWP开发中的重复性静态UI绘制小技巧 1
  3. python背诵技巧_15条常用Python小技巧
  4. Java入门算法(递归篇)丨蓄力计划
  5. python导入sas数据集_运用import过程进行SAS数据导入完全实用教程
  6. 把本地仓库建到github
  7. Datatables参数详解
  8. 行业大牛都是同时掌握游戏建模和游戏原画的吗?
  9. [导入]哀悼与感动同在[转载]
  10. 计算机网络hdcp是什么意思,为什么显卡面板显示此显示器不支持HDCP是怎么回事...
  11. rec删除xposed_Xposed框架对应各系统版本的下载与卸载
  12. 乞讨式的助人为乐不该提倡,换下铺被拒的律师是自作自受
  13. 2020年度CSDN博客之星评选——【Mr.郑先生_】感谢各位朋友的支持与陪伴!
  14. Linux Ubantu 关于vi中上下左右键和Backspace键无法使用解决
  15. Android 高效安全加载图片
  16. vue 前端解析Excel
  17. Oracle12c修改时区
  18. 从顺丰到菜鸟,洋女婿“爆改”俄罗斯邮政
  19. 沁恒CH552G实现最小系统[沁恒8位机MCU最小系统]
  20. 让 python 的输出都在同一行

热门文章

  1. 动态生成HTML页面
  2. LightGBM参数的贝叶斯搜索(有boost_from_average参数设置)
  3. python报错:TypeError: 'str' object is not callable
  4. win7 64位安装redis 及Redis Desktop Manager使用
  5. PHP 数据库连接池实现
  6. 如何在Linux上安装Composer
  7. CSS3的flex布局:方向 换行 对齐 顺序
  8. java如何返回之前代码_java – 如何在每次返回之前向消息添加代码?
  9. 使用 cglib_java动态代理(JDK和CGLIB原理解析与使用)
  10. 微型计算机中abcd是指,一级笔试模拟试题二(答案)