(一)10以内加法练习题
(二)10以内减法练习题
(三)10以内随机加、减法练习题
前言
随机生成10以内的加减法数学题。
一、导入库
需要用到随机数及openpyxl库。openpyxl建议指定安装版本2.3.4,高版本不太稳定。
pip install openpyxl==2.3.4
import random
import openpyxl as op
from openpyxl.styles import Font
二、编写脚本
1.生成10以内随机加减法
# 随机加减
def ten(num):
ten_list = []
while True:
a = random.randint(1, 10)
# 避免出现0+0
b = random.randint(1, 10)
c = random.choice("+-")
if c == "+":
# 控制和为10以内
if a + b <= 10:
ten_list.append(f"{a} + {b} = ")
else:
# 判断数字大小,避免出现负数
if a < b:
a, b = b, a
ten_list.append(f"{a} - {b} = ")
# 题目数量
if len(ten_list) == num:
break
return ten_list
2.将公式写入excel表
# 将公式写入excel表
def write_datas(num):
datas = ten(num)
# 新建excel表
wb = op.Workbook()
ws = wb['Sheet']
# 把列表数据分成2列写入
for i in range(0, len(datas), 2):
n = i / 2
del_datas = datas[i: i + 2]
ws.cell(row=n + 1, column=1, value=del_datas[0])
ws.cell(row=n + 1, column=3, value=del_datas[1])
wb.save('10+-.xlsx')
3.设置excel格式
# 设置excel格式
def set_style(num):
wb = op.load_workbook("10+-.xlsx")
ws = wb['Sheet']
# 调整列宽,行高
col = ["A", "B", "C"]
for i in col:
for j in range(1, num + 1):
ws.column_dimensions[i].width = 30
ws.row_dimensions[j].height = 40
# 设置字体
font = Font(name='黑体',
size=30,
color='FF000000',
bold=False,
italic=False,
vertAlign=None,
underline=None,
strike=False)
for row in ws[f'A1:C{int(num / 2)}']:
for cell in row:
cell.font = font
wb.save("10+-.xlsx")
4.执行脚本
if __name__ == '__main__':
num = int(input("请输入打印题目数量(双数):"))
write_datas(num)
set_style(num)
5.生成Excel文件
输入想要生成的题目数量,执行脚本得到“10±.xlsx”文件,打开即可打印使用。因为使用人群为小朋友,所以字体,间距相对比较大。可根据需要自行修改。输入题目数量建议为34的倍数,34题刚好一页A4纸大小。
总结
瞬间搞定成千上万道数学题,省去会员费,不用辛苦复制粘贴,妈妈再也不用担心我没有练习题了。源码下载:点此跳转。懒惰的人直接点此下载吧。
随手点赞一次,运气增加一份。