Python openpyxl读取单元格字体颜色过程解析


Posted in Python onSeptember 03, 2019

问题

我试图打印some_cell.font.color.rgb并得到各种结果。

对于一些人,我得到了我想要的东西(比如“ FF000000”),但对于其他人,它给了我Value must be type 'basetring'。我假设后者是因为我实际上没有为这些单元格定义字体颜色。

我正在使用openpyxl 2.2.2

解决方案

我认为这是openpyxl中的一个错误,我认为你应该在这里报告。

调试以下代码(当然使用trepan3k):

from openpyxl import Workbook
wb = Workbook()
ws = wb.active
c = ws['A4'] # cell gets created here
print(ws['A4'].font.color)

我明白了:

Color(rgb=Value must be type 'str', indexed=Value must be type 'int', auto=Value must be type 'bool', theme=1, tint=0.0, type='theme')

这来自文件中类Typed()的_repr_()openpyxl/descriptors/base.py。未初始化值时会给出此消息。请注意,“indexed”和“auto”也未设置。

但是这些应该ws['a4']是在执行访问代码时设置的。

注意:消息中的细微差别:'str'而不是'basestring'可能归因于我使用Python 3或不太可能使用openpyxl 2.2.3

如果我应该在我的示例中添加其他一些额外的代码,那么至少https://openpyxl.readthedocs.org/en/latest/index.html应该表明这一点。

另请参见openpyxl单元格样式未正确报告其中一个开发人员似乎在这么多单词中说同样的事情。

编辑:

其他一些事情可能值得关注。首先,您可以设置一个值然后读取它,例如您可以这样做:

c.font.color.rgb = "FF000000"

其次,如果您c.font.color.rgb在布尔值中测试,它将看起来像已设置的值。那是

if c.font.color: print("yes")

将打印“是”。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中黄金分割法实现方法
May 06 Python
Python之web模板应用
Dec 26 Python
Python类的继承和多态代码详解
Dec 27 Python
详解Django中间件执行顺序
Jul 16 Python
Python基于多线程实现ping扫描功能示例
Jul 23 Python
详解Python with/as使用说明
Dec 13 Python
python使用knn实现特征向量分类
Dec 26 Python
Python中单线程、多线程和多进程的效率对比实验实例
May 14 Python
Python操作redis和mongoDB的方法
Dec 19 Python
使用PyTorch实现MNIST手写体识别代码
Jan 18 Python
PyCharm无法识别PyQt5的2种解决方法,ModuleNotFoundError: No module named 'pyqt5'
Feb 17 Python
python字符串常用方法及文件简单读写的操作方法
Mar 04 Python
python xlwt如何设置单元格的自定义背景颜色
Sep 03 #Python
python实现静态web服务器
Sep 03 #Python
Python的Lambda函数用法详解
Sep 03 #Python
Python获取一个用户名的组ID过程解析
Sep 03 #Python
python多线程实现TCP服务端
Sep 03 #Python
Python实现多线程/多进程的TCP服务器
Sep 03 #Python
python+selenium 点击单选框-radio的实现方法
Sep 03 #Python
You might like
模拟xcopy的函数
2006/10/09 PHP
如何在PHP中进行身份认证
2006/10/09 PHP
PHP的中问验证码
2006/11/25 PHP
php类
2006/11/27 PHP
使用Limit参数优化MySQL查询的方法
2008/11/12 PHP
php图像处理函数大全(推荐收藏)
2013/07/11 PHP
PHP 面向对象程序设计(oop)学习笔记 (五) - PHP 命名空间
2014/06/12 PHP
PHP 数据结构队列(SplQueue)和优先队列(SplPriorityQueue)简单使用实例
2015/05/12 PHP
深入理解PHP+Mysql分布式事务与解决方案
2020/12/03 PHP
Stop SQL Server
2007/06/21 Javascript
jquery的ajax从纯真网(cz88.net)获取IP地址对应地区名
2009/12/02 Javascript
jQuery Clone Bug解决代码
2010/12/22 Javascript
js获取系统的根路径实现介绍
2013/09/08 Javascript
JavaScript定义变量和变量优先级问题探讨
2014/10/11 Javascript
js实现仿QQ秀换装效果的方法
2015/03/04 Javascript
gulp-uglify 与gulp.watch()配合使用时报错(重复压缩问题)
2016/08/24 Javascript
Bootstrap基本插件学习笔记之标签切换(17)
2016/12/08 Javascript
详解如何使用vue-cli脚手架搭建Vue.js项目
2017/05/19 Javascript
浅谈JS对html标签的属性的干预以及对CSS样式表属性的干预
2017/06/25 Javascript
JS运动特效之同时运动实现方法分析
2018/01/24 Javascript
JS实现动态生成html table表格的方法分析
2018/07/11 Javascript
详解Vue.directive 自定义指令
2019/03/27 Javascript
Javascript模拟实现new原理解析
2020/03/03 Javascript
AI小程序之语音听写来了,十分钟掌握百度大脑语音听写全攻略
2020/03/13 Javascript
解决echarts数据二次渲染不成功的问题
2020/07/20 Javascript
微信小程序实现页面左右滑动
2020/11/16 Javascript
实用的 vue tags 创建缓存导航的过程实现
2020/12/03 Vue.js
[15:28]DOTA2 HEROS教学视频教你分分钟做大人-剧毒术士
2014/06/13 DOTA
Python的print用法示例
2014/02/11 Python
python方向键控制上下左右代码
2018/01/20 Python
python与caffe改变通道顺序的方法
2018/08/04 Python
Python安装与基本数据类型教程详解
2019/05/29 Python
html5 自定义播放器核心代码
2013/12/20 HTML / CSS
优秀驾驶员先进事迹材料
2014/05/04 职场文书
Python上下文管理器Content Manager
2021/06/26 Python
python not运算符的实例用法
2021/06/30 Python