Python使用openpyxl生成N*N乘法表实战
本文介绍如何利用Python的openpyxl库,通过命令行接收参数N,自动生成N*N乘法表Excel文件。代码演示了创建工作簿、设置字体样式及填充单元格数值的完整流程,适用于Python办公自动化入门学习。
本文通过一个具体的Python编程实例,展示如何在Excel表格中创建乘法表。内容包含完整的代码实现与运行分析,供读者参考学习。
题目要求:
编写一个名为multiplicationTable.py的程序。该程序需从命令行接收一个整数N,并在Excel电子表格中生成一个N×N的乘法表。例如,通过命令行窗口传入参数:
py multiplicationRable.py 6
最终输出为一个6×6的乘法矩阵。
实现思路:
程序需完成以下功能: 从cmd命令行窗口接收参数n。 运行Python脚本,生成新的Excel文件。 生成的Excel文件包含n×n的乘法矩阵。 代码具体执行步骤如下: 导入openpyxl和sys模块。 使用openpyxl.Workbook()创建新的工作簿对象。 通过get_sheet_by_name获取工作表对象。 使用Font()创建字体样式对象(如加粗)。 利用for循环设置乘法矩阵的坐标轴标签。 利用for循环填充乘法结果至对应单元格。 调用save()方法保存文件。
完整代码示例:
#! python3
import openpyxl,sys
from openpyxl.styles import Font #输入Font代替输入openpyxl.styles.Font()
newExcel = openpyxl.Workbook() #新建工作簿对象
sheet = newExcel.get_sheet_by_name("Sheet")
n = int(sys.argv[1]) #将sys.argv接收到的参数转换为int型
fontObj = Font(bold = True) #设置字体加粗
for i in range(1,n+1):
sheet.cell(row=i+1,column = 1).value = i #对i+1行,1列进行赋值
sheet.cell(column = i+1,row = 1).value = i #对1行,i+1列进行赋值
sheet.cell(row=i + 1, column=1).font = fontObj #加粗
sheet.cell(column=i + 1, row=1).font = fontObj
# 公式输出
for k in range(2,n+2):
for p in range(2,n+2):
sheet.cell(row =k,column =p).value = (k-1) * (p-1)
newExcel.save("newExcel.xlsx")
运行结果展示
在cmd命令行中执行:
cd 切换到程序当前目录
生成的Excel结果如下:

更多关于Python操作Excel及文件处理的技巧,可查看本站相关专题:《Python操作Excel表格技巧总结》、《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》。
希望本文所述的Python程序设计案例能对大家有所帮助。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









