Python openpyxl读取单元格字体颜色过程解析
2019-09-03 14:30
5536 查看
问题
我试图打印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从共享目录读取考勤数据,通过openpyxl解析excel2007,查询出自己考勤记录
- [python爬虫]对html解析读取编码格式,统一转码为utf-8
- 小白python学习——matplotlib篇——绘制简单点和直线、颜色,字体大小改变
- 3、excel 导出。适合用于将界面上的内容所见及所得的输出,可以设置单元格的的合并,大小,字体,颜色等等
- 使用XLRD包识别Excel工作表单元格颜色代码-python,excel,xlrd-...
- python—matplotlib数据可视化实例注解系列-----设置标注字体样式(matplotlib颜色库)
- Python中输出字体的颜色设置
- Python3 读取和写入excel xlsx文件 使用openpyxl
- 改变CListCtrl单元格的颜色字体颜色
- [python][openpyxl]填充单元格
- lwip:网络数据包读取和解析过程
- 转载 NPOI.dll 用法。单元格,样式,字体,颜色,行高,宽度。读写excel
- Python用re(正则表达式)模块过滤Telnet字体颜色
- Python用re(正则表达式)模块过滤Telnet字体颜色
- eclipse +python 修改 各种颜色 +字体
- 【5】python读取excel表格(from openpyxl import load_workbook)
- python openpyxl 读取xls 解决方案
- python解析json文件读取Android permission说明
- dataGridView操作数据(增加 读取 绑定 获取选择的单元格 选中整行单元格时颜色变换 更新数据 锁定列的位置 添加行 列头的方法)
- 使用Python 绘制报表设置单元格颜色