效果展示

背景需求:

门牌号是下学期《我们的城市》主题中的一个活动——“造房子”。在该主题的个别化学习-益智区中,每个班级老师都会制作一个“小房子”,引导幼儿根据坐标了解各楼层门牌号的排序方式。

前期制作6*3门牌号,出现三个要改进的问题:

1、门牌号色彩需要调成灰色数字(黑色变成中灰)

2、每份空缺的数量需要相同(random.choice改成random.sample)

3、增加填写数量,提高难度(延长操作时间,9*5=45格,填写一半数量23个)

文件设置:

(一)文件位置

(二)模板样式(本文以9*5格为例,也可以把模板做成其他样式)

把教具打印后,发现虽然Random.sample(唯一取值),但每张的空缺数字还是不同。

重大错误:因为是手动输入门牌号,我word模板有"两个605”,没有“505”

但是错误的模板纸张已经批量打印了,为了不浪费,还是把它作为学具投放了,教学时告诉孩子们错误点,需要手动修改。

教学过程中,幼儿招呼老师修改错误房间号——模板上的数字不能错啊,一错毁所有

解决方案

2022年11月15日

1、word 手动输入数字——数量多,一个个输入很费时,可能输入错(本次存在的问题)

2、写代码导入EXCEL——制作房子9*5格子Word(没有数字),把数字制作成矩阵导入Excel,从EXCEL内复制到Word表格内,但数字的字体、颜色、间距都要重新手动设置。

3、代码导入Word单元格——房子9*5格子(没有数字),加上一段门牌号插入指定单元格及数字格式设置(间距、颜色、大小)的代码,就可以实现Word模板里有数字的需求,确保输入的数字不会错。

代码呈现

py代码可以存放再任意位置,因为所有文件路径都是已经全部写在代码里。

'''
作者:阿夏
时间:2022年10月20日
名称:大班学具:门牌号随机删除(9层*5间 )
'''
import numbers
import osnum=int(input('需要多少份教具(30人)\n'))
floor=int(input('共有几层楼(9层)\n'))
number=int(input('每层几间房(5间)\n'))
delete=int(input('需要删除几个门牌号(9*5=45/2=23个\n')) # 想要删除几个自己决定 本文默认是总数的一半9*5/22.5=22个
# delete=int(floor*number/2)  # 本文默认是总数的一半9*5/22.5=22个print('----------第1步:制作门牌号------------')
door=[]
for a1 in range(1,floor+1):    for a23 in range(1,number+1):b=str(a23).rjust(2,'0')c='{}{}'.format(a1,b)door.append(c)
print(door)
# ['101', '102', '103', '104', '105', '201', '202', '203', '204', '205', '301', '302', '303', '304', '305', '401', '402', '403', '404', '405', '501', '502', '503', '504', '505']print('----------第2步:新建一个临时文件夹------------')
# 新建一个”装N份word和PDF“的文件夹
os.mkdir(r'C:\Users\jg2yXRZ\OneDrive\桌面\门牌号2\门牌号Word')print('----------第3步:随机抽取门牌号数字 打开Word,把抽取的门号替换为空------------')
import random
from win32com.client import constants,gencache
from win32com.client.gencache import EnsureDispatch
from win32com.client import constants # 导入枚举常数模块
import os,timefor nn in range( 1,num+1):    word = gencache.EnsureDispatch('Word.Application')#启动word对象应用word.Visible = Falsedoc = word.Documents.Open(r'C:\Users\jg2yXRZ\OneDrive\桌面\门牌号2\门牌号模板{}乘{}.docx'.format(floor,number))#单个另存为word 单独文件夹内doc.SaveAs(r'C:\Users\jg2yXRZ\OneDrive\桌面\门牌号2\门牌号Word\{}.docx'.format('%02d'%nn))    # '%02d'%nn=把"1.docx"改成"01.docx"doc.Close()  #关闭1.docx #打开“1.docx”time.sleep(1) doc = word.Documents.Open(r'C:\Users\jg2yXRZ\OneDrive\桌面\门牌号2\门牌号Word\{}.docx'.format('%02d'%nn))# 随机抽取几个门牌号(#CSDN博主「孟意昶」 原文链接:https://blog.csdn.net/weixin_44999258/article/details/125163277)shuffle = random.sample(door, delete)print(shuffle)    # ['602', '403', '505']for b in shuffle:print(b)        # 602\403\505# 删除表格里的门牌号 (作者:守候\链接:https://www.zhihu.com/question/388608509/answer/2552638658)i = 0for ta in doc.Tables: # 遍历表格# f为每个表格区域查找f = ta.Range.Find# 查找框参数f.ClearFormatting() # 清除原有格式f.Forward = True # 向前查找f.Wrap = constants.wdFindStop # 查找完成即停止f.MatchWildcards = True # 使用通配符,根据需要设置f.Text = '{}'.format(b) # 查找的内容# 替换框参数(删除为空=把门号替换为''空值f.Replacement.ClearFormatting() # 清除原有格式f.Replacement.Text = '' # 替换框内容# f.Replacement.Font.ColorIndex = constants.wdRed # 替换文本的颜色设置为红色,此处是为了演示方便,看到效果。根据需要设置f.Execute(Replace=constants.wdReplaceAll) # 执行,查找全部i += 1   doc.Save()# 把有空格的1.docx保存# 打开1.docx 另存为1.pdf   每一个单页的docx分别保存一个单页的PDFdoc=word.Documents.Open("C:/Users/jg2yXRZ/OneDrive/桌面/门牌号2/门牌号Word/{}.docx".format('%02d'%nn),ReadOnly=1)doc.ExportAsFixedFormat("C:/Users/jg2yXRZ/OneDrive/桌面/门牌号2/门牌号Word/{}.pdf".format('%02d'%nn),constants.wdExportFormatPDF)# 关闭1.docxdoc.Close()print('----------第4步:把都有PDF合并为一个打印用PDF------------')# 多个PDF合并(CSDN博主「红色小小螃蟹」,https://blog.csdn.net/yangcunbiao/article/details/125248205)
import os
from PyPDF2 import PdfFileMerger
target_path =  'C:/Users/jg2yXRZ/OneDrive/桌面/门牌号2/门牌号Word'
pdf_lst = [f for f in os.listdir(target_path) if f.endswith('.pdf')]
pdf_lst = [os.path.join(target_path, filename) for filename in pdf_lst]
pdf_lst.sort()
file_merger = PdfFileMerger()
for pdf in pdf_lst:print(pdf)file_merger.append(pdf)
file_merger.write("C:/Users/jg2yXRZ/OneDrive/桌面/门牌号2/(打印合集)门牌号{}乘{}({}份).pdf".format(floor,number,num))
file_merger.close()print('----------第5步:删除临时文件夹------------')
import shutil
shutil.rmtree('C:/Users/jg2yXRZ/OneDrive/桌面/门牌号2/门牌号Word') #递归删除文件夹,即:删除非空文件夹

运行输入:

重点解析:

运行视频:

1、运行门牌号9*5 删除23格,批量30张,一共2分46秒

20221022Python门牌号9乘5

2、运行门牌号6*3 删除9格,批量30张,一共2分35秒

20221022Python门牌号6乘3

教学过程:

一、Python学具《门牌号9*5(灰色字》(有错误的一套)

(模板内容错误有两个605,导致每张空缺数量不同)

(一)基本信息:大1班    2022年10月31日   25人   统一使用6B铅笔

这两位幼儿实在不会做,就用铅笔描画打印的灰色门牌号数字。

同伴互助做题,蓝衣男孩为黄衣男孩写门牌号,并且是倒着写。

(二)作品扫描

不会做,可以直接描数字

后期调整的问题:

正确图示显示(模板正确):

如果Word模板数字正确,应该实现的作业纸效果。

模板里所有数字都是单一重复,只要把模板改成正确,每张图的空缺数量都一样

(1)手动抽取一半,大约23个

(2)自动默认抽取总数的一半空值,22条。

这下每一份门牌号中,缺失的空格一样多了。

结论:

1、Python制作“门牌号X乘Y”与uibot相比,具有“执行时间短、代码稳定、单机运行”的特点。

2、“门牌号X乘Y”的核心结构是对“已有模板(有答案)”内容的不重复随机删除。可以被用于其他类型的纸类学具设计(图形AB排序等)

3、前期Python学具代码(身份证、描字帖、电话号码)都是援引网络的代码或者使用马先生写的代码,我只会做数值调整。

这个“门牌号X乘Y”中终于有一部分的"遍历取值,列表制作”是我自己写的,在的编程的道路上,终于又迈出了一步。

二、Python学具《门牌号9*5(灰色字》(正确的一套)

(一)基本信息:

大8班    2022年11月24日15:00-15:30   20人 

背景:

前期虽然发现了9*5门牌号中的错误(两个605),但是因为学具已经打印,所以大1班孩子是用有错误的一套30张纸做的门牌号补全。后来我又打印了一套正确的9*5门票号,可是大1班孩子已经做过了,再做一次的新鲜感不强了,我也不想浪费学具。

11月24日,正好大8班缺老师顶下午班,于是我拿出了正确的9*5门牌号(31张),让20位孩子试试是否能完成门牌号补全。

学习过程:

(一)经验回顾:

1.看到什么——随便说

看着电视里面的PDF图片,有些孩子立刻懂了:

”第一个填的是901“

“是101”

“我家住在201”

“我家是402”

孩子们开始讨论自己的家的房间号,一时沸反盈天。

2.统计住在几楼

我询问并做了统计:”住在1楼的小朋友举手“

结果如下:1楼5人、2楼5人、3楼3人、4楼2人、5楼5人、6人3人,超过6楼的1人(16楼)(有孩子重复举手)

孩子补充说明:

”我自己家住在5楼,我爷爷奶奶家在2楼“

”我新家在6楼,现在的家是3楼“

”我爷爷奶奶家在12楼。“

3.分层要求:

我带领孩子数了9层和5间,提示屋顶写学号,然后对不同水平幼儿提出不同要求

(1)基本任务:把空白的房间号补全(铅笔或记号笔)

(2)不理解题意:不会做的,用铅笔把已有的23个门牌号描红

(3)磨时间用的:做的快的孩子可以装饰屋顶,纸张反面随机画画。

(二)操作过程:

1、“奋笔疾书”和“犹豫未决

4号桌六位孩子泾渭分明分成两类:三位男孩理解题意,做题速度极快。三位女孩不知所措,不敢下笔。

(1)“打印机”男孩们

案例一:10号男孩

“我做完了!”10号把纸张递给我

我一看铅笔补的门牌号数字正确,也简单绘制屋顶图案和反面的涂鸦图案(小汽车和涂鸦线),“嗯,屋顶和图案都画了”

考虑到通常男孩没有兴趣画精细的图案,我说“那你再做一份怎么样?”

“好的”,于是黑衣男孩又从电视机前拿了一份A4开始奋笔疾书。

他一共做了三份

案例二:双胞胎男孩

11和13是双胞胎男孩,他们同样以“人力印刷机”的速度进行数字填空,并完成了大量涂鸦绘画。

其中11号在递交作业时,还问了老师一个问题

"老师,这两张纸不一样哦!“

“哪里里不一样?”

“这里都写了,这里只写了两个(9楼的一行)”

“是的,每个房子缺的门牌号都不一样”我很高兴他发现每张作业中的空缺差异,“做两份一样的题目有什么意思,做不一样题目才好玩!”

“嗯”他点点头,并没有把作业交上来,而是去看他兄弟的作业纸,拿过来对照着:

“XX,你看,这两个房子不一样噢”

13号也是刷题高手,用记号笔填写,下笔如有神。

(2)沮丧女孩

与这些“又快又好”的孩子相比,同桌的粉衣、浅绿、红衣女孩抓耳挠腮、东张西望、完全不理解需要做什么,无论是描字、抄写、写学号也有明显困难。

教师把数字列好,鼓励幼儿自己描画学号。

门牌号描红时幼儿也说自己不会,老师包着她的右手,示范描了两个数字后,幼儿才能进行灰色打印门牌号的描字。

“我给你抄好啦!”男孩完成后主动把作业纸垂直倒置,鼓励浅绿衣女孩抄写,但女孩不知道要怎么抄写,迟迟不敢下手。

20位孩子有3位孩子无法填写空缺,并且都集中在第4组,虽然教师也尝试进行原理提示,或者直接告诉填写的答案,但是课堂时间内这些幼儿不可能快速理解意义。因此老师只能鼓励他们对已有的门牌号数字进行铅笔描字练习、屋顶添画和纸背涂鸦的活动(幼儿可以自由绘画)

“明天周五,把房子拿回去问问爸爸妈妈这些空要填什么。”

红衣7号:

浅绿衣12号(镜像数字,SSI  实际是12,)

粉衣17号(学号书写困难,给了参考,能够画出学号)

 

2、“三数填写”和“创意绘画

(1)填写数字

除了一组特别有特点的描字孩子,其他孩子都埋头努力在空缺格子里书写“三个数字

类型一:会做的

有的孩子理解,因此下笔速度很快,书写有规律,大部分幼儿都是从下到上(小的楼层到大的楼层)或者从上到下

 类型二:会抄的

有的孩子不一定会做,但能够观摩他人,尝试偷偷抄写答案(抄的正确、抄的不正确)

同伴互相观察时说,你这个不对,他们就用橡皮擦干净,抄上同伴告诉的数字。

抄别人的写好的答案。

类型三:会问的

有孩子不会做,依靠求助获得同伴告诉的答案,凭借记忆在指定格子里写数字。

求助同学

求助老师

类型四:会编的

有孩子根据自己的理解,书写三个数字(楼层对,但房间号不对)

上下楼层连号

不同水平的用各自对于楼层号码XY的经验和能力进行数字书写,呈现明显的能力分层(写的速度快、写的正确性、镜像字、只能描字等)实在不理解的孩子也不是课堂上教一下就能理解的。

(2)创意绘画——屋顶

填门牌号数字能力对某些孩子来说很难快速理解。但“画屋顶”“随便画”的内容,不会填数字的孩子也从沮丧转为兴奋,提笔就画——无论男孩女孩都能够在纸张方面、屋顶上进行几何图形的绘画。


 

精美的屋顶装饰简直比门牌号更夺人眼球。

 (3)纸背涂鸦

幼儿在纸上反面随意绘画——有整块涂满的、有小小的图形。

千变万化的图形能构成一个个简单的情节,幼儿之间通过这些图案进行互动沟通。

求表扬、求羡慕、求关注——获得成就感。

第二次的9*5门牌号教学活动中。体会到

【教学类-08-02】20221021《门牌号(9层*5间 灰色版)》(大班主题《我们的城市》)相关推荐

  1. 【教学类-08-01】20221010《门牌号(6层*3间 黑色版)》(大班主题《我们的城市》)

    效果展示 背景需求: 我的小课题<运用Python设计大班层次性纸类学具的案例研究>获得2022年MHQ小课题立项,在前期的<学号名字描字帖><身份证><数字 ...

  2. 【教学类-33-02】20230518食物加加加2.0版(3、4、5、10、15、20以内数字加法,随机抽数)

    作品展示 3以内点数加法:加法最大值6 4以内点数加法:加法最大值8 背景需求: 幼儿在完成"5以内加法21题.5以内减法21题"时,有两个特点: 1.50%幼儿能口算,另外50% ...

  3. 【教学类-09-01】20221022《动物棋10*10》(数字续写和骰子游戏)(大班主题《动物花花衣》)

    效果样式: 背景需求: [教学类-08]"门牌号"的设计原理是对已有的Word模板内的"数字"进行随机删除,幼儿尝试补全空格上的门牌号.根据这个思路,我把代码进 ...

  4. 【教学类-29-03】20230409《门牌号-黏贴版(5层*5间)灰底下划线》-(中班《我爱我家》偏数学)

    作品样式: 背景需求 在门牌号黏贴版教学实践中,发现90%的幼儿都不会做 1.空格没有平均分布: 从5*6=30的门牌号中,随机抽取5个空格,有80%的概率出现"一行2个空.3行1个空&qu ...

  5. 【教学类-29-02】20230402《门牌号-黏贴版打印数量调查教学实践(6层*5间)》-(中班《我爱我家》偏数学)

    背景需求 前文介绍了门牌号黏贴版的制作过程,及4款分层学具的参数设置.但是我很快又发现了两个问题 [教学类-29-01]20230401<门牌号(6层*5间)-黏贴版(中班<我爱我家> ...

  6. 【教学类-30-02】10以内加法题不重复(一页两份)(包括6以内、7以内、8以内、9以内、10以内加法题 只抽取25个)

    作品样式: 背景需求: 前一篇提到5以内不重复(不超过25题)加法题的word界面布局,做为普测题目打印 [教学类-30-01]5以内加法题不重复(一页两份)包含1以内.2以内.3以内.4以内.5以内 ...

  7. 【教学类-09-02】20221022《动物棋10*10 S形迷宫》(数字续写和骰子游戏)(大班主题《动物花花衣》)

    效果展示: 背景需求: [教学类-09-01]20221022<动物棋>的排列方式是10*10矩阵(每行都是从小到大升序排列)从游戏棋的角度出发,它并不是一条线连贯的路线.游戏时需要&qu ...

  8. 【教学类-32-01】十二生肖1.0版(绘画+手工+排序+分类+玩牌)(中班:偏科学-数)

    作品展示 背景需求--从数字到图片 最佳孩子们做Python纸类(数学)的频率比较高.但都是数字类(加减法.门牌号.火车箱.电话号码等)我想翻新花样,设计新的内容,就想到了水果图片.动物图片. 百度图 ...

  9. 【教学类-06-05】20220405 20以内加减法“从小到大排序题“(不重复题)(Python VS)

    前提需求: [教学类-07-02]20220330 5以内加减法不重复题 及生成word打印docx纸(方法二)(Python VS)_reasonsummer的博客-CSDN博客[教学类-07-02 ...

最新文章

  1. HDOJ 1157 HDU 1157 Who's in the Middle ACM 1157 IN HDU
  2. 《研磨设计模式》chap18 状态模式state(1)模式简介
  3. 机器人学习--室内定位的通信学科背景方法
  4. python子进程的输出不可见_python-输出子进程调用的命令行?
  5. 今天开始休婚假,国庆顺便回家参加下自己的婚礼!
  6. Yum包管理工具的20个常用命令
  7. River Hopscotch
  8. 04年学计算机,2004年4月全国高等教育自学考试计算机网络与通信试题
  9. 玛莎拉蒂品牌与酷客多小程序达成官方合作!
  10. 二叉查找树与平衡二叉树
  11. Word页面中底端如何画一条横线,再下端写文字?
  12. 艺工交叉——达芬奇只会画画吗?
  13. PVE系列教程(七)、安装iKuai软路由
  14. 毕业设计c语言课程设计,毕业设计—c语言—课程设计.doc
  15. 计算机组成原理唐朔飞第二版答案第六章,计算机组成原理第六章部分课后题答案(唐朔飞版)...
  16. 小米全系列手机 刷机总贴
  17. NBMA网络中的OSPF实验(MGRE)
  18. U8接口开发-五大方式对比与剖析
  19. 一米OA任意文件读取漏洞
  20. R语言学习2.1.数值型与字符型

热门文章

  1. 简单明了!汇编语言求最大值和最小值
  2. PDU(协议数据单元)
  3. 域名解析需要多久生效?域名解析常见问题解答
  4. 新概念二册 Lesson 39 Am I all right?我是否痊愈?(复习直接引语变间接引语)
  5. Live Source Address 2019最新的电视广播包_JPXzq 软硬包定制背景墙【刺绣系列】
  6. 金三银四:关于分析师换工作的5条提醒
  7. 三步jh StarUML | 仅供学习
  8. 宽网MP3编辑器怎么样
  9. 区块链 - 链接区块
  10. 辉煌优配|消费股引领A股盘中V形反转