快捷搜索:  汽车  科技

如何用python将excel相近数据对齐:python处理Excel实战进阶篇day02

如何用python将excel相近数据对齐:python处理Excel实战进阶篇day02#前面省略喽,加上标题,主要的是把第一行合并、插入数据,再设置对齐和字体等 #忘了,返回复习哦^_^ #插入标题、合并单元格 ws.merge_cells('A1:I1') ws['A1'] = '九九乘法表Excel版——黑板客爱技术制作' #设置字体、颜色、对齐方式 cell = ws['A1'] cell.font = Font(name='微软雅黑' size=18 bold=True color=colors.RED) cell.alignment = Alignment(horizontal='center' vertical='center') 效果如下:2、普通代码如下:1、极简代码如下:from openpyxl import Workbook wb = Wo

实例02—openpyxl 模块Excel批量插入九九乘法表(两种方案)

需求:

正常教学需要,给孩子们打印九九乘法表,用Word或者Excel编辑好打印出来,但是很麻烦,能不能自动化的打印出来呢?这时Python处理Excel文件的模块openpyxl派上用场了。

用到的知识点:

Python的循环,列表操作,字符串格式化,wb对象基本操作,ws.cell()方法,ws.append()方法等,本节实例可以大部分复习基础篇的知识点哦,请认真操作,稍有不明白,请跳往基础篇目查看。

1、极简代码如下:

from openpyxl import Workbook wb = Workbook() ws = wb.active ws.title = '九九乘法表' #循环遍历生成 for i in range(1 10): for j in range(1 i 1): ws.cell(i 1 j '%dx%d=-' % (j i i*j))#核心代码,从第2行开始写,第一行留做标题 #保存文件 wb.save('九九乘法表.xlsx')

这里的核心代码,从第2行开始写,写的个数是由j决定的,执行代码及结果如下:

如何用python将excel相近数据对齐:python处理Excel实战进阶篇day02(1)

代码

如何用python将excel相近数据对齐:python处理Excel实战进阶篇day02(2)

2、普通代码如下:

#前面省略喽,加上标题,主要的是把第一行合并、插入数据,再设置对齐和字体等 #忘了,返回复习哦^_^ #插入标题、合并单元格 ws.merge_cells('A1:I1') ws['A1'] = '九九乘法表Excel版——黑板客爱技术制作' #设置字体、颜色、对齐方式 cell = ws['A1'] cell.font = Font(name='微软雅黑' size=18 bold=True color=colors.RED) cell.alignment = Alignment(horizontal='center' vertical='center')

效果如下:

如何用python将excel相近数据对齐:python处理Excel实战进阶篇day02(3)

3、pro版本代码如下:

from openpyxl import Workbook from openpyxl.styles import Font Alignment PatternFill colors wb = Workbook() ws = wb.create_sheet('九九表') #插入标题、合并单元格 ws.merge_cells('A1:I1') ws['A1'] = '九九乘法表Excel版——黑板客爱技术制作' cell = ws['A1'] cell.font = Font(name='微软雅黑' size=18 bold=True color=colors.RED) cell.alignment = Alignment(horizontal='center' vertical='center') #循环遍历方法1 for i in range(1 10): for j in range(1 i 1): ws.cell(i 1 j '%dx%d=%d'%(j i j*i))#填充数据 ws.cell(i 1 j).fill = PatternFill(patternType='solid' fgColor=colors.BLUE)#填充背景 ws.cell(i 1 j).font = Font(name='宋体' size=15 color=colors.WHITE bold=True)#填充字体 #保存文件 wb.save('九九乘法表pro.xlsx')

结果展示:(当然美化在Excel中就可以,Python是用来自动化的,这里主要是再次复习前面的基础知识

如何用python将excel相近数据对齐:python处理Excel实战进阶篇day02(4)

4、pro_plus版本代码如下:

这里换一种方案和思路进行,我们可以利用ws.append()方法,参数是可遍历的对象,一行一行插入,第一行插入标题,第二行插入一个数据,第三行插入两个数据……直到最后一行。

由于篇幅关系,核心代码如下:

for x in range(1 10): tmp = [] for y in range(1 x 1): value = '%dx%d=%d'%(y x x*y) tmp.append(value) ws.append(tmp)

思路是:每一行建一个临时列表tmp,每一行的数据循环插入列表tmp,插入完毕后,再把列表append到表格的每行中。

猜您喜欢: