【教学类

您所在的位置:网站首页 11到20的加减法算式 【教学类

【教学类

2024-07-14 20:25| 来源: 网络整理| 查看: 265

背景需求——幼小衔接适应

疫情危机,孩子们哪里也不敢去。为了丰富幼儿的寒假生活。搭档程老师想给孩子布置一些打卡任务,运动、绘画、写字等,她找到网上一份20以内的加减法7页纸的题目想发给家长打印,但无法下载(收费 )。我想既然我会一点python,自己批量一些题应该不难吧。

出现问题——批量加减法有重复

加减法练习,包括了前书写(名字、日期)和思维练习(数字、计算),有助于大班孩子们感知一年级的题型样式,逐步适应小学数学模式。因此我尝试拷贝、修改以前下载的加减法python代码,顺利完成了Word模板的填写。但是,前期孩子们说“有题目是一样的”的现象非常明显(相同的题目相邻出现) ——本次批量了360题,用Excel查找重复值后,只留下了215条不重复的,41%的题目都是重复的。为了删除重复题,又费了不少时间。

解决途径——求教IT高手

IT网管员马先生提供了技术支持,经过三轮测试,制作了一个代码行数较少的“20以内加减法不重复”的代码,测试后的确实现了预期需求

一、代码(简易版) # -*- coding: utf-8 -*- """ @author: 马清新 @file: 马清新注释版 不重复的20以内加减法(最多190题).py @time: 2022/1/19 8:42 """ import random # regList用于存储合规的加减法表达式(正确列式) regList = [] # answer用于存储合规的加减法表达式(正确答案) answer = [] maxNum = int(input('请输入加法和最大值(10以内 20以内'))#输入最大值 regnum = int(input('请输入出题数量(20以内取值范围小于等于190题)'))#输入题目数量 # 加减法 i = regnum # i=出题数量 循环记数使用 while i > 0: #当数量大于0,执行 try: #try……except含义:try没有异常时,处理器不执行, # regStr = '' #把整数算式转换成字符串使用的,初始情况下让它为空比较保险 # 随机 要求和值范围内的 随机数 a = random.randint(1,maxNum) # 随机 要求和值范围内的随机数,要求两随机数和不得大于maxNum b = random.randint(1,(maxNum-a)) # 比较两各随机数大小,如ab则使用减法,c是记录加减法的答案 if a len(resultList):#输入题数大于实际需求,就用shuffle洗牌, print(f'您的需求大于最大算式生成数量!最大生成算式数量为{len(resultList)}') i = len(resultList) for _ in resultList: selectList.append(_) random.shuffle(selectList) #shuffle 洗牌算法,把列表所有元素打乱,随机排列 for _ in selectList: # 可选打印带答案的和不带答案啊 print(_[0])# 不带答案 # print(f'{_[0]}{_[1]}')# 带答案 else:#输入题数小于实际需求,代码自动随机抽取,不会排序, i = regNum selectList = random.sample(resultList,i) for _ in selectList: # 可选打印带答案的和不带答案啊 print(_[0])# 不带答案 # print(f'{_[0]}{_[1]}')# 带答案 # 验证生成算式数量 print(f'共生成不重复的算式{len(selectList)}') print(f'最大不重复的算式{len(resultList)}') # 保存为TXT文件(在默认打开文件夹下,手动拷贝到Word里1 # str_title = '2.txt' # 保存文件名60 # with open('2.txt','w') as f:# 打开TXT文件 # for a in selectList:# #循环查找答案的内容8 # # f.write(str(a[0])+'\n')# 写入答案内容并回车 a[0]没有答案 # f.write(str(a[0])+'\n')#写入答案内容并回车 a[1]有答案 # f.close()# #关闭TXT、 # 2月4日修改TXT文件名称 str_title = '%d以内的加减法题(共%d题).txt' % (sumMax, len(resultList)) # 保存带数字提示的题目 with open(str_title,'w') as f:# 打开TXT文件 for a in selectList:# #循环查找答案的内容 f.write(str(a[0])+'\n')# 不带答案 # f.write(str(a[1])+'\n')#只有答案 # f.write(str(a[0])+str(a[1])+'\n')#有题目有答案 TXT里面是题目+答案,终端显示题目 无答案,因为上面选了(0) f.close()# #关闭TXT 二、代码运行 (一 )运行 

(二)运行 第一个问题,输入“X以内加减法”中的X数字20

 (三)运行第二个问题输入任意数字

 (四)VS界面结果

  (五)TXT结果

 打印模板——Word打印模板制作(后期尝试能直接生成Word模板,现在先手动) 1、题目样张

 2、统一抬头(在页眉里设置)

  3、作业页码(插入页码)    4、把TXT的数字批量拷贝到Word里

   5、制作四列分栏

 

 

   6、字体变大

 7、添加外框 8、462题可以布满15张差一些

教学反思——抓牢基础,万变不离

感谢马先生写的代码,解决了我在批量加减法题中的题目重复问题,从实际需求中去学习如何解读代码内容,让记忆中的基础知识被唤醒,真正地理解其实用性。从直观效果中加深记忆和理解。鸣谢大师!

这是阿夏第7个实际运用到幼儿园教学中的Python自动化案例(教学类-06),希望能通过借鉴、实验、修改,将Python运用到幼儿园办公工作和幼儿教学中,提高工作效率,推动幼儿个性化学习和层次性学习成效。   



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3