python 根據(jù)excel中顏色區(qū)分讀取的操作
要求:
讀取以下表格中所有字體為大紅色或者單元格顏色為黃色的信息

利用到的模塊是: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)
結(jié)果:

補(bǔ)充:python操作Excel和Docx并控制文字的顏色及其他樣式(通俗易懂)
1、Excel
from xlsxwriter.workbook import Workbook
workbook = Workbook(r'test.xlsx') # 創(chuàng)建xlsx
worksheet = workbook.add_worksheet('A') # 添加sheet
red = workbook.add_format({'color':'red'}) # 顏色對(duì)象
worksheet.write(0, 0, 'sentences') # 0,0表示row,column,sentences表示要寫(xiě)入的字符串
test_list = ["我愛(ài)", "中國(guó)", "天安門(mén)"]
test_list.insert(1, red) # 將顏色對(duì)象放入需要設(shè)置顏色的詞語(yǔ)前面
print(test_list)
worksheet.write_rich_string(1, 0, *test_list) # 寫(xiě)入工作簿
workbook.close() # 記得關(guān)閉
結(jié)果如下:

2、Docx
from docx import Document # pip install python-docx
from docx.shared import RGBColor, Pt
from docx.oxml.ns import qn
content = ["我愛(ài)", "中國(guó)"," 北京"]
print(content)
# 創(chuàng)建文檔對(duì)象
document = Document()
# 創(chuàng)建段落對(duì)象,注意,里面的內(nèi)容會(huì)顯示在段落開(kāi)頭
para = document.add_paragraph('段落0\n')
# 往para段落對(duì)象中添加正文內(nèi)容
para.add_run(content[0])
# 往para對(duì)象添加內(nèi)容的同時(shí)返回內(nèi)容對(duì)象run,之后可以通過(guò)這個(gè)run對(duì)象給這個(gè)部分的文字設(shè)置樣式,比如顏色,大小,字體等
run = para.add_run(content[1])
# 給run對(duì)象設(shè)置字體顏色屬性, RGBColor(250,0,0)表示紅色
run.font.color.rgb = RGBColor(250,0,0)
# 給run對(duì)象設(shè)置字體大小屬性
run.font.size = Pt(20)
# 給run對(duì)象設(shè)置字體類(lèi)型屬性
run.font.name = u'宋體'
run._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋體')
# para對(duì)象中添加其他內(nèi)容
para.add_run(content[2])
# 保存
document.save('test.docx')
結(jié)果如下:

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
Python中如何使用多線程優(yōu)化For循環(huán)
這篇文章主要為大家詳細(xì)介紹了在Python中如何使用多線程實(shí)現(xiàn)優(yōu)化For循環(huán),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-01-01
Python開(kāi)發(fā)入門(mén)——迭代的基本使用
這篇文章主要介紹了Python 迭代的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)python開(kāi)發(fā),感興趣的朋友可以了解下2020-09-09
一文詳解Python為什么要寫(xiě)__init__.py
這篇文章主要介紹了Python為什么要寫(xiě)__init__.py的相關(guān)資料,__init__.py文件可以包含包的初始化環(huán)境變量、公共接口、包的信息以及通過(guò)__all__變量控制模塊的公開(kāi)接口,需要的朋友可以參考下2025-03-03
淺談pycharm下找不到sqlalchemy的問(wèn)題
今天小編就為大家分享一篇淺談pycharm下找不到sqlalchemy的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-12-12
用Python實(shí)現(xiàn)BP神經(jīng)網(wǎng)絡(luò)(附代碼)
這篇文章主要介紹了用Python實(shí)現(xiàn)BP神經(jīng)網(wǎng)絡(luò)(附代碼),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07

