python 小学数学口算题卷子自动生成发布全新版本
Primary School Mathematics 小学数学口算题
孩子上小学一年级了,加减乘除的口算就要开始练习了,估计老师肯定会让家长出题,所以提前准备一下,利用Python开发了一套自动生成小学生口算题的小应用。 为了让辛苦的程序员老爹解放抄题的双手,本程序让你拥有更多的时间去写代码而不用去手写几道口算题而劳神伤脑。所以有或没有娃子的程序员老爹们一起来继续优化个开源小程序的?有什么点子,发现什么BUG,欢迎提出issue。
仅以此软件,献给那些热爱Python
的程序员老爹们!
程序更新
2022-11-05 由于之前代码所用的框架是比较久远的版本,很多新人需要折腾很长时间才能运行起来,鉴于此种情况,全面更换了前后端的框架,使程序的运行环境搭建更为方便了.重构期间修复了一些bug和逻辑,后续将更新一些新功能.比如一键生成预制的常见类型的口算题等.
程序核心功能:
1.可以设置各算数项和结果的取值范围及多步算数符号的选择,可以生成求结果、求算数项、带括号的算式,最多支持3步算式题,除法可以生成带有余数的口算题.
2.可以简单设置文档标题,小标题。设置生成的口算题文档个数
3.一键生成常见类型口算题(dev版本中正在调试开发中)
程序的安装
Git克隆或是下载压缩包。
git clone https://gitee.com/J_Sky/PrimarySchoolMathematics.git
后端的环境搭建
- 本程序运行调试的python环境为
3.8.8
,建议新建一个全新的虚拟环境来测试。
下载程序进入/webbackend
,安装程序相关依赖,在程序根目录下运行终端:
cd webbackend pip install -r requirements.txt
/webbackend
目录终端下运行python main.py
,或者使用vscode
打开/webbackend/main.py
,运行当前文件即可.- 打开浏览器在地址栏中输入
http://127.0.0.1:8000/docs
,看到下图就是环境搭建成功了.
前端环境搭建
进入
./webfrontend
终端输入:cd webfrontend
,如果你使用的是vscode,可以使用分屏新建终端,这样前后端的服务器启动可以一目了然.终端输入:
npm install
更新下载前端的依赖,如果速度太慢,建议搜索使用镜像服务器下载依赖.终端输入:
npm start
启动前端服务器.正常的话你会看到下图:
最近发现有些朋友下载代码后不能使用请看这里
- 本程序运行调试的python环境为
3.8.8
,建议新建一个全新的虚拟环境来测试。 - 首次运行时,前后端报错的话,大概率都是依赖没有安装,建议查看错误提示安装相关依。
- 如果依然无法运行,可以发起issues提供详细的报错信息,或是联系我一起分析。
使用教程
启动程序
终端下进入程序根目录,先启动后端:
(fastAPI_psm) bash-3.2$ cd webbackend (fastAPI_psm) bash-3.2$ python main.py
终端显示下图即是后端启动完毕.
再开一个终端,如果是vscode
拆分终端,进入到./webfrontend
,输入npm start
终端显示如下就说明启动成功了.
程序的使用
- 例:生成10以内加法口算题60道,设置好算数项的取值范围和运算符号,设置好口算题数目之后点添加口算题,最后点击生成口算题即可!
- 口算题卷子保存在
./docx
目录下,用软件打开后连接打印机就可以打印了. - 一些复杂的口算题都是先从添加口算题开始,比如我要打印60道100以内的加减法混合口算题,结果不大于70. 这个时候我们可以选择第一步运算符号的加法和减法,设置好其他参数,然后添加口算题,最后点生成口算题.
- 具体的使用可以多试试,其实很简单啦!
程序成生的口算题截图:
一些想法
重构程序界面的时候发现自己的能力有限,所以界面ui的处理很让人头疼,希望有时间有能力的前端后端全栈的牛逼大佬来贡献一沓代码,共同完善这个小程序,为更多宝贝的程序员老爹老妈省下更多的时间!
后端主要是一些简单的算法,后续还想添加的功能有:小数的口算题,整十百千的口算,分数口算题(这个完全没有思路)。
最后感谢曾经贡献过代码的同学,再次谢谢你们!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
死锁的3种死法
1. 什么是死锁 在多线程环境中,多个进程可以竞争有限数量的资源。当一个进程申请资源时,如果这时没有可用资源,那么这个进程进入等待状态。有时,如果所申请的资源被其他等待进程占有,那么该等待进程有可能再也无法改变状态。这种情况称为死锁 在Java中使用多线程,就会有可能导致死锁问题。死锁会让程序一直卡住,不再往下执行。我们只能通过中止并重启的方式来让程序重新执行。 2. 造成死锁的原因 当前线程拥有其他线程需要的资源 当前线程等待其他线程已拥有的资源 都不放弃自己拥有的资源 3. 死锁的必要条件 3.1 互斥 进程要求对所分配的资源(如打印机)进行排他性控制,即在一段时间内某资源仅为一个进程所占有。此时若有其他进程请求该资源,则请求进程只能等待。 3.2 不可剥夺 进程所获得的资源在未使用完毕之前,不能被其他进程强行夺走,即只能由获得该资源的进程自己来释放(只能是主动释放)。 3.3 请求与保持 进程已经保持了至少一个资源,但又提出了新的资源请求,而该资源已被其他进程占有,此时请求进程被阻塞,但对自己已获得的资源保持不放。 3.4 循环等待 是指进程发生死锁后,必然存在一个进程–资源之间...
- 下一篇
网市场云建站 v5.7 发布,部署自己的 SAAS 建站平台
SAAS 云建站系统,可通过后台任意开通多个网站,每个网站使用自己的账号进行独立管理。让每个互联网公司都可私有化部署自己的 SAAS 云建站平台,一台 1 核 2G 服务器可建立几万个独立网站! 使用方面,延续了帝国 CMS、织梦 CMS 的建站方式,有模版页面、模版变量、栏目绑定模版、内容管理等,用过帝国、织梦的,可快速使用! 核心理念 将成本(服务器、技术人员、网站制作、后续运维)降到最低,使(建站公司)利润最大化! 更新记录 增加[版本升级]插件,可以通过总管理后台一键升级。 增加WriteCode自动写代码内置,可根据数据表自动写出代码。 增加[html压缩]插件,可以生成整站后,自动将本系统所带的html注解的标签去掉。 [OEM定制]插件,增加系统设置-域名绑定中,注册域名的URL自定义 [网站分离]插件,增加FTP推送支持 [网站分离]插件,增加SFTP推送支持 [网站分离]插件,增加生成html到服务器本身缓存的支持,适用于文章非常多,比如几万篇文章,同时使用了云存储的情况,解决生成慢的问题 增加 TemplateInterface 接口,可通过此自由扩展系统动态标签。...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装Docker,最新的服务器搭配容器使用
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,8上快速安装Gitea,搭建Git服务器
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS8编译安装MySQL8.0.19