python 根据excel中颜色区分读取的操作
程序员文章站
2022-03-27 08:40:34
要求:读取以下表格中所有字体为大红色或者单元格颜色为黄色的信息利用到的模块是:openpyxlimport openpyxlfilename="colortest.xlsx"#读取excelworkb...
要求:
读取以下表格中所有字体为大红色或者单元格颜色为黄色的信息
利用到的模块是: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')
结果如下:
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。
上一篇: 面值最大才10元
下一篇: Android自定义View实现雪花特效