创建程序 multiplicationTable.py,从命令行接受数字 N,在一个 Excel 电子表格 中创建一个 N×N 的乘法表
#12.13.1 multiplicationTable.py
import openpyxl,sys #导入模块
if len(sys.argv)==1:#判断命令行是否有输入参数
print('Please enter a number')
else:
num=int(sys.argv[1])
num=6
wb=openpyxl.Workbook()#新建工作簿
sheet0=wb['Sheet']
for i in range(2,num+2):#在第一行填写1~N
sheet0.cell(row=1,column=i).value=i-1
for i in range(2,num+2):#在第一列填写1~N
sheet0.cell(row=i,column=1).value=i-1
x=openpyxl.utils.get_column_letter(num+1)+str(num+1)#得到乘法表右下角单元格的坐标
for rowobj in sheet0['B2':x]:#迭代乘法表每个单元格,填入数据
for cellobj in rowobj:
a=sheet0.cell(row=cellobj.row,column=1).value
b=sheet0.cell(row=1,column=openpyxl.utils.column_index_from_string(cellobj.column)).value
cellobj.value=a*b
wb.save('example3.xlsx')