本文用于给中小学生生成口算题作业练习,仅供参考。
环境准备
首先确保电脑上有Pycharm,同时需要几个安装包:
- docx
- numpy
其中docx用于将生成结果保存在Word文档中,numpy是一个常见的数值计算的安装包。
如果自己的计算机中没有安装这两个包,可以通过Terminal进行安装:
pip install docx
如果安装docx出现任何问题,请安装python-docx:
pip install python-docx
如果安装成功,Terminal会显示如下:
同理,可以安装numpy:
pip install numpy
一键执行
安装完系统之后,新建一个python脚本:
核心代码如下:
# @Time: 2023/7/29 20:09
import os
import datetime
from docx import Document, shared
import numpy as np
import decimal
# 指定小数位数
SET_N_DECIMAL = 2
# 指定返回表达式长度
STRING_LENGTH = 30
# 每一页题目的行数,总题数: 3 * FILE_ROWS
FILE_ROWS = 33
today = datetime.date.today().strftime('%Y - %m - %d')
# 统计当前路径底下,当天的错题文件个数
file_cnt = 1
for file in os.listdir('./'):
if file.startswith(f'arithmetic_questions_without_answer_{
today}'):
file_cnt += 1
file_without_ans = f'./arithmetic_questions_without_answer_{
today}_version {
str(file_cnt).zfill(2)}.docx'
file_with_ans = f'./arithmetic_questions_with_answer_{
today}_version {
str(file_cnt).zfill(2)}.docx'
def main():
generate_arithmetic_questions()
def generate_arithmetic_questions():
line_without_ans = ''
line_with_ans = ''
try:
Document(file_without_ans)
Document(file_with_ans)
except:
document_without_ans = Document()
document_without_ans.save(file_without_ans)
document_with_ans