python 根据excel中颜色区分读取的操作

 更新时间:2021年03月06日 12:22:33   作者:不合格学霸  
这篇文章主要介绍了python 根据excel中颜色区分读取的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

要求:

读取以下表格中所有字体为大红色或者单元格颜色为黄色的信息

利用到的模块是:openpyxl

import openpyxl
filename="colortest.xlsx"#读取excel
workbook=openpyxl.load_workbook(filename)
worksheet=workbook.get_sheet_by_name("试题2")#读取Sheet
rows,cols=worksheet.max_row,worksheet.max_column
yellow=[]
red=[]
for i in range(1,rows):
 for j in range(1,cols):
  ce=worksheet.cell(row=i,column=j)
  fill = ce.fill
  font = ce.font  
  if fill.start_color.rgb=="FFFFFF00" and ce.value!=None:
   yellow.append(ce.value)
  if font.color.rgb=="FFFF0000":
   red.append(ce.value)
print(yellow,red)

结果:

补充:python操作Excel和Docx并控制文字的颜色及其他样式(通俗易懂)

1、Excel

from xlsxwriter.workbook import Workbook
workbook = Workbook(r'test.xlsx') # 创建xlsx
worksheet = workbook.add_worksheet('A') # 添加sheet
red = workbook.add_format({'color':'red'}) # 颜色对象
worksheet.write(0, 0, 'sentences') # 0,0表示row,column,sentences表示要写入的字符串
test_list = ["我爱", "中国", "天安门"]
test_list.insert(1, red) # 将颜色对象放入需要设置颜色的词语前面
print(test_list)
worksheet.write_rich_string(1, 0, *test_list) # 写入工作簿
workbook.close() # 记得关闭

结果如下:

2、Docx

from docx import Document # pip install python-docx
from docx.shared import RGBColor, Pt
from docx.oxml.ns import qn
content = ["我爱", "中国"," 北京"]
print(content)
# 创建文档对象
document = Document()
# 创建段落对象,注意,里面的内容会显示在段落开头
para = document.add_paragraph('段落0\n')
# 往para段落对象中添加正文内容
para.add_run(content[0])
# 往para对象添加内容的同时返回内容对象run,之后可以通过这个run对象给这个部分的文字设置样式,比如颜色,大小,字体等
run = para.add_run(content[1])
# 给run对象设置字体颜色属性, RGBColor(250,0,0)表示红色
run.font.color.rgb = RGBColor(250,0,0)
# 给run对象设置字体大小属性
run.font.size = Pt(20)
# 给run对象设置字体类型属性
run.font.name = u'宋体'
run._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')
# para对象中添加其他内容
para.add_run(content[2])
# 保存
document.save('test.docx')

结果如下:

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

  • 一文带你探寻Python中的迭代器

    一文带你探寻Python中的迭代器

    你知道for...in是底层原理是什么样的么?这篇文章就来和大家详细讲一讲Python中迭代器的的相关知识,文中的示例代码讲解详细,感兴趣的可以了解一下
    2023-04-04
  • Python中如何使用多线程优化For循环

    Python中如何使用多线程优化For循环

    这篇文章主要为大家详细介绍了在Python中如何使用多线程实现优化For循环,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2025-01-01
  • Python开发入门——迭代的基本使用

    Python开发入门——迭代的基本使用

    这篇文章主要介绍了Python 迭代的相关资料,帮助大家更好的理解和学习python开发,感兴趣的朋友可以了解下
    2020-09-09
  • python基础之内置函数

    python基础之内置函数

    这篇文章主要介绍了python内置函数,实例分析了Python中返回一个返回值与多个返回值的方法,需要的朋友可以参考下
    2021-10-10
  • 一文详解Python为什么要写__init__.py

    一文详解Python为什么要写__init__.py

    这篇文章主要介绍了Python为什么要写__init__.py的相关资料,__init__.py文件可以包含包的初始化环境变量、公共接口、包的信息以及通过__all__变量控制模块的公开接口,需要的朋友可以参考下
    2025-03-03
  • java直接调用python脚本的例子

    java直接调用python脚本的例子

    有时需求使用JAVA直接调用python脚本,执行一些服务器监控的事情。 本文给出一个java直接调用python脚本的例子
    2014-02-02
  • python使用cookielib库示例分享

    python使用cookielib库示例分享

    Python中cookielib库(python3中为http.cookiejar)为存储和管理cookie提供客户端支持,下面是使用示例
    2014-03-03
  • python集合能干吗

    python集合能干吗

    在本篇内容中小编给各位分享了关于python集合的作用以及相关实例内容,需要的朋友们可以学习参考下。
    2020-07-07
  • 浅谈pycharm下找不到sqlalchemy的问题

    浅谈pycharm下找不到sqlalchemy的问题

    今天小编就为大家分享一篇浅谈pycharm下找不到sqlalchemy的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • 用Python实现BP神经网络(附代码)

    用Python实现BP神经网络(附代码)

    这篇文章主要介绍了用Python实现BP神经网络(附代码),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07

最新评论