张韶涵,Python操作高版别Excel文件:色彩、边框、兼并单元格,炒白菜

本文首要色彩Python扩展库openpyxl的一些根本用法,包含创立作业簿、挑选活动作业表、写入单元格数据,设置单元格字体色彩、边框款式,兼并单元格等等。

from random import randint, choice

from openpyxl import Workbook

from openpyxl.styles import Font, colors, Border, Side

from openpyxl.drawing.image import Image

#创立作业簿

wb = Workbook()

#获取活动作业表

ws = wb.active

#修改作业表标题

ws.title = '测验'

#字段标题

ws.append([' ', '语文', '数学', '英语', '总分'])

#名字信息

names = '一二三四五六七八九'

lastNames = '赵钱孙李周吴郑王'

for i, c in enumerate(names):

cell = 'A'+str(i+2)

ws[cell] = choice(lastNames) + c

#随机成果数据

for row in range(2, len(names)+2):

#随机生成没人每门课的成果

row = str(row)

for col in 'BCD':

ws[col+row] = randint(30, 100)

#运用公式核算每个人的总分

ws['E'+row] = '=sum(B' + row + ':D' + row + ')'

#刺进图片

ws.add_image(Image('yingtaoxiaowanzi.png'), 'F1')

#兼并单元格

lastRow = str(len(names)+2)

ws.merge_cells('B'+lastRow+':I'+lastRow)

ws['A'+lastRow] = '阐明:'

ws['B'+lastRow] = '这仅仅个测验。'

#通用边框信息

left, right, top, bottom = [Side(style='medium',color='000000')]*4

border = Border(left=left, right=right, top=top, bottom=bottom)

#设置单元格边框和色彩

#表头和最终一行的阐明运用默许的黑色

for row in range(2, len(names)+2):

#奇偶行字体色彩替换

if row%2 == 0:

color = colors.RED

else:

color = '00CCFF'

#设置边框和色彩

for col in 'ABCDE':

ws[col+str(row)].border = border

ws[col+str(row)].font = Font(color=color)

#保存文件

wb.save('测验.xlsx')

代码运转生成的Excel文件如图所示: