刚学python,求求大佬们帮忙看下这个代码怎么修改才能去掉生成的word中前三行空的,代码如下:
import random
import os
import tkinter
import tkinter.ttk
from docx import Document
columnsNumber = 4
def main(rowsNumbers=20,grade=4):
if grade < 3:
operators = '+-'
biggest = 20
elif grade <= 4:
operators = '+-×÷'
biggest = 100
elif grade <= 6:
operators = '+-×÷('
biggest = 100
document = Document()
table = document.add_table(rows=rowsNumbers,cols=columnsNumber)
table.style.font.name = '宋体'
for row in range(rowsNumbers):
for col in range(columnsNumber):
first = random.randint(1,biggest)
second = random.randint(1,biggest)
operator = random.choice(operators)
if operator != '(':
if operator == '-':
if first < second:
first,second = second,first
else: r = str(first).ljust(2,' ')+' ' + operator + str(second).ljust(2,' ') + '='
else:
third = random.randint(1,100)
while True:
o1 = random.choice(operators)
o2 = random.choice(operators)
if o1 != '(' and o2 !='(':
break
rr = random.randint(1,100)
if rr > 50:
if o2 == '-':
if second < third:
second,third = third,second
r = str(first).ljust(2,' ') + o1 +'('+str(second).ljust(2,' ')+o2+str(third).ljust(2,' ')+')='
else:
if o1 == '-':
if first < second:
first,second = second,first
else: r = '(' + str(first).ljust(2,' ') + o1 +str(second).ljust(2,' ')+')'+o2+str(third).ljust(2,' ')+'='
cell = table.cell(col,row)
cell.text = r
document.save('kousuan.docx')
if name == 'main':
app = tkinter.Tk()
app.title('小学生口算题生成器')
app['width'] = 300
app['height'] = 150
lableNumber = tkinter.Label(app,text='数量:',justify=tkinter.RIGHT,width=50)
lableNumber.place(x=10,y=40,width=50,height=20)
comboNumber = tkinter.ttk.Combobox(app,values=(10,20,30,40,50),width=50)
comboNumber.place(x=70,y=40,width=50,height=20)
labelGrade = tkinter.Label(app,text='年级:',justify=tkinter.RIGHT,width=50)
labelGrade.place(x=130,y=40,width=50,height=20)
comboGrade = tkinter.ttk.Combobox(app,values=(1,2,3,4,5,6),width=50)
comboGrade.place(x=200,y=40,width=50,height=20)
def generate():
number = int(comboNumber.get())
grade = int(comboGrade.get())
main(number,grade)
buttonGenerate = tkinter.Button(app,text='计算',width=40,command=generate)
buttonGenerate.place(x=130,y=90,width=40,height=30)
app.mainloop