from random import randint
from openpyxl import Workbook
from openpyxl.styles import Font, PatternFill
# foreground - All in white
fg_colors =[
Font(color='FFFFFF', bold=True),
Font(color='FFFFFF', bold=True),
Font(color='FFFFFF', bold=True),]# background - Red for 1st, blue for 2nd, magenta for 3rd
bg_colors =[
PatternFill(start_color='FF0000', end_color='FF0000', fill_type="solid"),
PatternFill(start_color='0000FF', end_color='0000FF', fill_type="solid"),
PatternFill(start_color='FF00FF', end_color='FF00FF', fill_type="solid"),]
wb = Workbook()# wn = Workbook('test.xlsx')
ws = wb["Sheet"]# Create random data in worksheetfor y, col inenumerate(ws.iter_cols(min_row=1, max_col=5, max_row=10)):for x, cell inenumerate(col):
cell.value = randint(0,1000)# Find where to paint colorsfor col in ws.iter_cols():
cell_list =list(sorted(col, key=lambda cell:cell.value, reverse=True))for i, cell inenumerate(cell_list[:3]):
cell.font = fg_colors[i]
cell.fill = bg_colors[i]# Save workbook
wb.save('test.xlsx')
Example Code,
没任何回应,也没打钩?这个问题解决了吗?