网站设计的关键,初二怎么做网站,宝安中心医院怎么样,自媒体时代做网站有前途吗背景需求#xff1a;
做了中班的四类活动安排表#xff0c;我顺便给大班做一套
【办公类-90-01】】20250213中班周计划四类活动的写法#xff08;分散运动、户外游戏、个别化#xff08;美工室图书吧探索室#xff09;#xff09;-CSDN博客文章浏览阅读874次#xff0… 背景需求
做了中班的四类活动安排表我顺便给大班做一套
【办公类-90-01】】20250213中班周计划四类活动的写法分散运动、户外游戏、个别化美工室图书吧探索室-CSDN博客文章浏览阅读874次点赞10次收藏11次。【办公类-90-01】】20250213中班周计划四类活动的写法分散运动、户外游戏、个别化美工室图书吧探索室https://blog.csdn.net/reasonsummer/article/details/145626428?sharetypeblogdetailsharerId145626428sharereferPCsharesourcereasonsummerspm1011.2480.3001.8118
编号 代码复制 总园中班大班的规则是差不多的
1运动从一周五个项目变成了一个项目
2、游戏从一周五个项目变成了一个项目。
3、个别化—和中班不同只要写一个项目而不是美工、图书、探索 一、分散运动 和中班的运动设计思路一样只是5周循环改成7周循环。
但是它的场地不是按序递增而是1475326. 但是它也是有规律的第二行是从第一行的索引3开始提取 可以循环3次21周49*3147但是实际20周20*5140。 因此我需要 在总表里遍历直接删除B列单元格里面有“第21周”的一行内容。 目的2024年2月大班总部分散运动场地每星期只有一条各班滚动排
大班是7个班一个基础循环49天循环3次21周需要删除最后7天的内容
一周一次,就不用考虑节假日了
作者阿夏、星火讯飞
时间2024年2月15日15:30
import sys
import random
import xlrd
import xlwt
from openpyxl import load_workbook
import time
import os, shutil# 一共20周
w 20
# 五周一循环
xz 7
# 提取元素数量140个
zcw*xz# 循环次数多一点
y 3
print(y)print(---------第1步把8个运动场地循环21次105元素组成的列表------)# 本学期总园大班只有5个
gradenum [1,2, 3, 4, 5, 6,7]path rC:\Users\jg2yXRZ\OneDrive\桌面\202502 大班3类活动批量
# 新建一个”装N份word和PDF“的文件夹sport []
classroom []
week []# 这里是8个运动场地因为后面有递进所以把最后一个 放到01前面这样摆放后面才会正确
sportall [场地1主要材料平衡车、三轮车、自行车、木桥等,场地4主要材料轮胎、跨栏、锣鼓、接力棒等 ,场地7主要材料轮胎、安全垫、麻绳等 ,场地5主要材料竹梯、三脚架、长凳、轮胎、安全垫等 ,场地3主要材料爬笼、树屋、沙漏、书包、铃铛等 ,场地2主要材料弹力棉球、吸盘球、飞镖盘等 ,场地6主要材料各类球、箩筐、百变迷宫架、马甲等,
]
# sport[1,2,3,4,5]
# 规律是第一组12345第二组23451 第三组34512 第三组45123第五组51234
# ss sportall * 20sp[]
# 添加第1组
sp sportall.copy()
print(sport)
# 添加第2-6组
for i in range(xz-1): # 总共需要添加4次因为已经有一个初始组sportall sportall[3:] sportall[:3]print(f第{i 1}次提取的元素: {sportall})for x in sportall:sp.append(x)
print(len(sp))# 49次sport[]
# # 手动复制3次
for x in range(y): # 7周一循环最少3次21周for yy in sp:sport.append(yy)
# 提取前140个正好20周每周7个场次print(运用场地:, sport)
print(运动场地长度:, len(sport))
# 140classroom[]for x in range(y): # 4for i in range(len(gradenum)):for oo in range(xz):classroom.append(f大{gradenum[i]}班)print(classroom)
print(len(classroom))
# 140
week[]
for x in range(y): # 4for o in range(xz): # x5 for l in range(x * xz 1, x * xz xz 1):ww f第{l:02}周week.append(ww)week week
print(week)
print(len(week))# 制作表格
import openpyxl
from openpyxl import Workbook# 创建一个工作簿对象
wb Workbook()
ws wb.active
ws.title 总表# 在A1写入“班级”B1写入“周次”C1写入“运动场地”
ws[A1] 班级
ws[B1] 周次
ws[C1] 运动场地# 从A2开始写入classroomB2开始写入weekC2开始写入sport
for i in range(len(classroom)):ws[fA{i 2}] classroom[i]ws[fB{i 2}] week[i]ws[fC{i 2}] sport[i]# 将总表内容按照班级拆分到同一个工作簿的不同工作表大标签为“班级分散运动安排”
for grade in gradenum:ws_new wb.create_sheet(titlef大{grade}班分散运动安排)ws_new[A1] 班级ws_new[B1] 周次ws_new[C1] 运动场地row 2for i in range(len(classroom)):if classroom[i].startswith(f大{grade}):ws_new[fA{row}] classroom[i]ws_new[fB{row}] week[i]ws_new[fC{row}] sport[i]row 1# 保存到文件
output_file path r\01 大班分散运动..xlsx
wb.save(output_file)
print(fExcel文件已保存到: {output_file})# 删除最后一行“第21周”
# 重新打开保存的文件以进行进一步操作
wb openpyxl.load_workbook(output_file)# 遍历所有工作表删除最后一行
for sheet_name in wb.sheetnames:ws wb[sheet_name]max_row ws.max_rowif max_row 1: # 确保不是只有标题行的工作表# 逆序循环删除倒数几行ws.delete_rows(max_row )# ws.delete_rows(max_row - 1, 1)删除第20周19和21都在# ws.delete_rows(max_row - 1, 2)删除第20周和2119在# 再次保存修改后的文件
wb.save(output_file)
print(f所有工作表的最后一行已删除并保存到: {output_file}) 结果展示 一、总表 总表里生成有21周 二、班级表
删除每个班级运动里面的最后一行 如果想删除最后2行 也就是想删除几行数字写第二个最高行是删除数减去1 如果想隔行删除修改最高行减去的数字。 二、游戏活动
大班游戏活动就用大班运动的那个代码。把备注补上
批量修改字母文字 同时基础模板提取格式为索引6开始的文字 代码展示 目的2024年2月大班总部分散游戏场地每星期只有一条各班滚动排
大班是7个班一个基础循环49天循环3次21周需要删除最后7天的内容
一周一次,就不用考虑节假日了
作者阿夏、星火讯飞
时间2024年2月15日15:30
import sys
import random
import xlrd
import xlwt
from openpyxl import load_workbook
import time
import os, shutil# 一共20周
w 20
# 五周一循环
xz 7
# 提取元素数量140个
zcw*xz# 循环次数多一点
y 3
print(y)print(---------第1步把8个游戏场地循环21次105元素组成的列表------)# 本学期总园大班只有5个
gradenum [1,2, 3, 4, 5, 6,7]path rC:\Users\jg2yXRZ\OneDrive\桌面\202502 大班3类活动批量
# 新建一个”装N份word和PDF“的文件夹game []
classroom []
week []# 这里是8个游戏场地因为后面有递进所以把最后一个 放到01前面这样摆放后面才会正确
gameall [ 建构游戏1——绿操场东, 表演游戏2——广场砖, 角色游戏2——南侧草坪西,建构游戏2——302, 表演游戏1——绿操场西, 角色游戏1——南侧草坪东, 沙水游戏——中庭沙水区,
]
# game[1,2,3,4,5]
# 规律是第一组12345第二组23451 第三组34512 第三组45123第五组51234
# ss gameall * 20sp[]
# 添加第1组
sp gameall.copy()
print(game)
# 添加第2-6组
for i in range(xz-1): # 总共需要添加4次因为已经有一个初始组gameall gameall[6:] gameall[:6]print(f第{i 1}次提取的元素: {gameall})for x in gameall:sp.append(x)
print(len(sp))# 49次game[]
# # 手动复制3次
for x in range(y): # 7周一循环最少3次21周for yy in sp:game.append(yy)
# 提取前140个正好20周每周7个场次print(运用场地:, game)
print(游戏场地长度:, len(game))
# 140classroom[]for x in range(y): # 4for i in range(len(gradenum)):for oo in range(xz):classroom.append(f大{gradenum[i]}班)print(classroom)
print(len(classroom))
# 140
week[]
for x in range(y): # 4for o in range(xz): # x5 for l in range(x * xz 1, x * xz xz 1):ww f第{l:02}周week.append(ww)week week
print(week)
print(len(week))# 制作表格
import openpyxl
from openpyxl import Workbook# 创建一个工作簿对象
wb Workbook()
ws wb.active
ws.title 总表# 在A1写入“班级”B1写入“周次”C1写入“游戏场地”
ws[A1] 班级
ws[B1] 周次
ws[C1] 游戏场地# 从A2开始写入classroomB2开始写入weekC2开始写入game
for i in range(len(classroom)):ws[fA{i 2}] classroom[i]ws[fB{i 2}] week[i]ws[fC{i 2}] game[i]# 将总表内容按照班级拆分到同一个工作簿的不同工作表大标签为“班级分散游戏安排”
for grade in gradenum:ws_new wb.create_sheet(titlef大{grade}班分散游戏安排)ws_new[A1] 班级ws_new[B1] 周次ws_new[C1] 游戏场地row 2for i in range(len(classroom)):if classroom[i].startswith(f大{grade}):ws_new[fA{row}] classroom[i]ws_new[fB{row}] week[i]ws_new[fC{row}] game[i]row 1# 保存到文件
output_file path r\02 大班分散游戏..xlsx
wb.save(output_file)
print(fExcel文件已保存到: {output_file})# 删除最后一行“第21周”
# 重新打开保存的文件以进行进一步操作
wb openpyxl.load_workbook(output_file)# 遍历所有工作表删除最后一行
for sheet_name in wb.sheetnames:ws wb[sheet_name]max_row ws.max_rowif max_row 1: # 确保不是只有标题行的工作表# 逆序循环删除倒数几行ws.delete_rows(max_row-0,1 )# 删除最后1行# 如果想倒着删除多行# ws.delete_rows(max_row - 1, 2) # 删除最后2行# 删除第20周19和21都在# ws.delete_rows(max_row - 2, 3)# 删除最后3行# 再次保存修改后的文件
wb.save(output_file)
print(f所有工作表的最后一行已删除并保存到: {output_file})
1分钟就写好了 一、总表 二、班级表 三、个别化
大班的个别化每周只有写一个个别化活动室但实际上内容和中班每周写三个活动室是一样的思路 我发现它的基本模板规律是
1、“室内美术、户外美术、户外美术图科图科”
2、“室内美术、户外美术、户外美术科图科图”
而且每个班级还表明了周一、周二、周三、周四 好吧开始痛苦的基础模板制作 把基础模板核对是否正确 代码展示 目的2024年2月大班总部分散个别化场地每星期只有一条各班滚动排
大班是7个班一个基础循环49天循环3次21周需要删除最后7天的内容
一周一次,就不用考虑节假日了
作者阿夏、星火讯飞
时间2024年2月15日15:30
import sys
import random
import xlrd
import xlwt
from openpyxl import load_workbook
import time
import os, shutil# 一共20周
w 20
# 五周一循环
xz 7
# 提取元素数量140个
zcw*xz# 循环次数多一点
y 3
print(y)print(---------第1步把8个个别化场地循环21次105元素组成的列表------)# 本学期总园大班只有5个
gradenum [1,2, 3, 4, 5, 6,7]path rC:\Users\jg2yXRZ\OneDrive\桌面\202502 大班3类活动批量
# 新建一个”装N份word和PDF“的文件夹study []
classroom []
week []
# for x in range(y): # 4
# 初始化基础模型
a [室内美工, 户外美术, 户外美术]
b[图书吧, 科探室]*2
c[科探室,图书吧, ]*2
print(a,b,c)l1 [a[2]] b[:] a[:2]
l2 c[:2] a b[:2]
l3 a[1:] c [a[0]]
l4 b[:3] a [c[0]]
l5 a c
l6 b a
l7 [c[0]] a b[:3]
mx l1 l2 l3 l4 l5 l6 l7
print(mx)
print(len(mx))# 将 mx 按每7个元素一组进行分组
grouped_mx [mx[i:i7] for i in range(0, len(mx), 7)]
print(grouped_mx)# for x in grouped_mx:
# print(x)study[]
# # 手动复制3次
for x in range(y): # 7周一循环最少3次21周for yy in mx:study.append(yy)
# 提取前140个正好20周每周7个场次print(运用场地:, study)
print(个别化场地长度:, len(study))
# 140classroom[]for x in range(y): # 4for i in range(len(gradenum)):for oo in range(xz):classroom.append(f大{gradenum[i]}班)print(classroom)
print(len(classroom))
# 140
week[]
for x in range(y): # 4for o in range(xz): # x5 for l in range(x * xz 1, x * xz xz 1):ww f第{l:02}周week.append(ww)week week
print(week)
print(len(week))# 制作表格
import openpyxl
from openpyxl import Workbook# 创建一个工作簿对象
wb Workbook()
ws wb.active
ws.title 总表# 在A1写入“班级”B1写入“周次”C1写入“个别化场地”
ws[A1] 班级
ws[B1] 周次
ws[C1] 个别化场地aaclassroom[:7]
# 探索室
bb[’四]
cc# 从A2开始写入classroomB2开始写入weekC2开始写入study
for i in range(len(classroom)):ws[fA{i 2}] classroom[i]ws[fB{i 2}] week[i]ws[fC{i 2}] study[i]ws[fC{i 2}] 本周study[i]活动。# 将总表内容按照班级拆分到同一个工作簿的不同工作表大标签为“班级分散个别化安排”for grade in gradenum:ws_new wb.create_sheet(titlef大{grade}班分散个别化安排)ws_new[A1] 班级ws_new[B1] 周次ws_new[C1] 个别化场地row 2for i in range(len(classroom)):if classroom[i].startswith(f大{grade}):ws_new[fA{row}] classroom[i]ws_new[fB{row}] week[i]ws_new[fC{row}] study[i]# ws_new[fC{row}] 本周study[i]活动。row 1# 保存到文件
output_file path r\03 大班个别化学习..xlsx
wb.save(output_file)
print(fExcel文件已保存到: {output_file})# 删除最后一行“第21周”
# 重新打开保存的文件以进行进一步操作
wb openpyxl.load_workbook(output_file)# 遍历所有工作表删除最后一行
for sheet_name in wb.sheetnames:ws wb[sheet_name]max_row ws.max_rowif max_row 1: # 确保不是只有标题行的工作表# 逆序循环删除倒数几行ws.delete_rows(max_row-0,1 )# 删除最后1行# 如果想倒着删除多行# ws.delete_rows(max_row - 1, 2) # 删除最后2行# 删除第20周19和21都在# ws.delete_rows(max_row - 2, 3)# 删除最后3行# 再次保存修改后的文件
wb.save(output_file)
print(f所有工作表的最后一行已删除并保存到: {output_file}) 然后询问大班组长是否要吧周一写入 结果周一写在前面
查看房间使用星期可探索室大1-大6班都是固定的周一、周三但是最后的大7班一天是周一、一天是周三 同理发现图书吧也是大1班两天不同其他班级相同 询问后这是正确的排法避免出现使用同一个活动室的情况 这对我的想用遍历方式配对‘班级’、‘房间’‘星期’来说就不适合了。 于是我立刻想到用读取docx表格的方式将49个元素做成一个列表 顺利将49个元素提取了
这是最方便的方法了。下次做表格统计也用这个方法直接提取不用切片了
然后识别cell里面是否有“一二三四五”有就把汉字放入最前面删除括号和里面的周X 目的2024年2月大班总部分散个别化场地每星期只有一条各班滚动排
# 提取word里面的表格里面的49个元素
大班是7个班一个基础循环49天循环3次21周需要删除最后7天的内容
一周一次,就不用考虑节假日了
作者阿夏、星火讯飞
时间2024年2月15日15:30
import sys
import random
import xlrd
import xlwt
from openpyxl import load_workbook
import time
import os, shutil# 一共20周
w 20
# 五周一循环
xz 7
# 提取元素数量140个
zcw*xz# 循环次数多一点
y 3
print(y)print(---------第1步把8个个别化场地循环21次105元素组成的列表------)# 本学期总园大班只有5个
gradenum [1,2, 3, 4, 5, 6,7]path rC:\Users\jg2yXRZ\OneDrive\桌面\202502 大班3类活动批量
# 新建一个”装N份word和PDF“的文件夹study []
classroom []
week []
# for x in range(y): # 4
# 初始化基础模型
from docx import Document# 打开Word文档
doc Document(pathr\03 大班 2025.2个别化活动安排(1).docx)# 获取文档中的所有表格
tables doc.tables# 检查是否有表格存在
if len(tables) 0:# 获取第一张表格table tables[0]# 初始化一个空列表来存储单元格的值cell_values []# 定义要查找的汉字target_chars [一, 二, 三, 四, 五]# 遍历表格的行和列提取指定单元格的值for row in range(1, 8): # 从第2行到第7行索引从0开始for col in range(1, 8): # 从第2列到第7列索引从0开始cell table.cell(row, col).textprint(fOriginal cell content: {cell})# 检查单元格内容是否包含目标汉字for char in target_chars:if char in cell:# 将汉字加到单元格内容的前面并舍弃最后4个字符modified_cell char cell[:-4]cell_values.append(modified_cell)breakelse:# 如果单元格内容不包含目标汉字直接添加原始内容cell_values.append(cell)# cell_values.append(cell.text)
else:print(文档中没有表格)# 打印结果
print(cell_values)
print(len(cell_values))
# 49# # 将 mx 按每7个元素一组进行分组
# grouped_mx [mx[i:i7] for i in range(0, len(mx), 7)]
# print(grouped_mx)# # for x in grouped_mx:
# # print(x)study[]
# # 手动复制3次
for x in range(y): # 7周一循环最少3次21周for yy in cell_values:study.append(yy)
# 提取前140个正好20周每周7个场次print(运用场地:, study)
print(个别化场地长度:, len(study))
# 140classroom[]for x in range(y): # 4for i in range(len(gradenum)):for oo in range(xz):classroom.append(f大{gradenum[i]}班)print(classroom)
print(len(classroom))
# 140
week[]
for x in range(y): # 4for o in range(xz): # x5 for l in range(x * xz 1, x * xz xz 1):ww f第{l:02}周week.append(ww)week week
print(week)
print(len(week))# 制作表格
import openpyxl
from openpyxl import Workbook# 创建一个工作簿对象
wb Workbook()
ws wb.active
ws.title 总表# 在A1写入“班级”B1写入“周次”C1写入“个别化场地”
ws[A1] 班级
ws[B1] 周次
ws[C1] 个别化场地# 从A2开始写入classroomB2开始写入weekC2开始写入study
for i in range(len(classroom)):ws[fA{i 2}] classroom[i]ws[fB{i 2}] week[i]ws[fC{i 2}] study[i]ws[fC{i 2}] 本周study[i]活动。# 将总表内容按照班级拆分到同一个工作簿的不同工作表大标签为“班级分散个别化安排”for grade in gradenum:ws_new wb.create_sheet(titlef大{grade}班分散个别化安排)ws_new[A1] 班级ws_new[B1] 周次ws_new[C1] 个别化场地row 2for i in range(len(classroom)):if classroom[i].startswith(f大{grade}):ws_new[fA{row}] classroom[i]ws_new[fB{row}] week[i]# ws_new[fC{row}] study[i]ws_new[fC{row}] 本周study[i]活动。row 1# 保存到文件
output_file path r\03 大班个别化学习..xlsx
wb.save(output_file)
print(fExcel文件已保存到: {output_file})# 删除最后一行“第21周”
# 重新打开保存的文件以进行进一步操作
wb openpyxl.load_workbook(output_file)# 遍历所有工作表删除最后一行
for sheet_name in wb.sheetnames:ws wb[sheet_name]max_row ws.max_rowif max_row 1: # 确保不是只有标题行的工作表# 逆序循环删除倒数几行ws.delete_rows(max_row-0,1 )# 删除最后1行# 如果想倒着删除多行# ws.delete_rows(max_row - 1, 2) # 删除最后2行# 删除第20周19和21都在# ws.delete_rows(max_row - 2, 3)# 删除最后3行# 再次保存修改后的文件
wb.save(output_file)
print(f所有工作表的最后一行已删除并保存到: {output_file}) 四、合并表格不需要填充黄色了 05 组合三类安排表内容到 一个excel(因为本次运动\游戏都是一天,而不是五天,可以合并在一起,便于复制.黄色一条说明是美术室周个别化要写美术地内容)
作者阿夏
时间2025年2月18日import os
import pandas as pd
from openpyxl import load_workbook
from openpyxl.styles import PatternFill
from openpyxl.utils import get_column_letter
from copy import deepcopy
import xlrd,time
import xlwt
import openpyxl
from openpyxl import load_workbook# 定义文件夹路径和文件名列表
folder_path rC:\Users\jg2yXRZ\OneDrive\桌面\202502 大班3类活动批量
new folder_path r\三类表格
new_name folder_path r\05 总园大班周计划三类活动写法.xlsx# 过滤出所有的 Excel 文件假设扩展名为 .xlsx
excel_files [file for file in os.listdir(new) if file.endswith(.xlsx)]
print(Excel 文件名:, excel_files)
# [01 大班分散运动..xlsx, 02 大班户外游戏..xlsx, 03 大班个别化..xlsx, 04 大班美工室游戏..xlsx]# 读取第一个 Excel 文件并复制它
first_file os.path.join(new, excel_files[0])
wb load_workbook(first_file)
wb.save(new_name)# 打开复制后的文件以进行修改
copied_file new_name
wb_copy load_workbook(copied_file)
ws_copy wb_copy.active# 假设excel_files, new, ws_copy, and copied_file已经在其他地方定义
n1
for file in excel_files[1:]:file_path os.path.join(new, file)wb_source load_workbook(file_path)# 获取所有工作表名称sheet_names [sheet.title for sheet in wb_source.worksheets]print(表名:, sheet_names)for sheet_name in sheet_names[1:]:# 检查工作表名称前3个字是否匹配matched_sheet Nonefor target_sheet_name in ws_copy.parent.sheetnames:if sheet_name[:3] target_sheet_name[:3]:matched_sheet target_sheet_namebreakif matched_sheet:print(f正在处理工作表: {sheet_name} -gt; {matched_sheet})# 读取源工作表的C列数据包括标题source_df pd.read_excel(file_path, sheet_namesheet_name, usecolsC)print(source_df)# 调试打印源数据框的列针对工作表名称print(f源数据框的列 {sheet_name}: {source_df.columns})# 获取源数据框的列名这里应该是C列column_name source_df.columns[0]if column_name in source_df.columns:# 获取目标工作表对象target_ws ws_copy.parent[matched_sheet]# 将数据写入目标工作表的D列包括标题# 首先写入标题target_ws.cell(row1, columnn3).value column_name # Column n4 corresponds to D, E, F, etc.# 然后写入数据for i, value in enumerate(source_df[column_name], start2): # Start from row 2 to leave space for the headertarget_ws.cell(rowi, columnn3).value value# 复制源单元格样式到目标单元格source_cell wb_source[sheet_name].cell(rowi, column3) # Source cell is in column C (index 3)target_cell target_ws.cell(rowi, columnn4)else:print(fColumn {column_name} not found in {sheet_name})else:print(f没有找到与工作表 {sheet_name} 前3个字匹配的目标工作表)# 增加列索引以处理下一个文件的数据到下一列n 1# 自动调整最适合的列宽
for sheet in wb_copy.sheetnames:ws wb_copy[sheet]for col in ws.columns:max_length 0column col[0].column_letter # Get the column namefor cell in col:try:if len(str(cell.value)) max_length:max_length len(str(cell.value))except:passadjusted_width (max_length 2) * 1.8 # Adding a little extra spacews.column_dimensions[column].width adjusted_width# ## 删除第一张工作表“总表”first_sheet wb_copy.worksheets[0]
wb_copy.remove(first_sheet)# 保存修改后的文件
wb_copy.save(copied_file)
print(操作完成)这是我写代码的第4年第6次做周计划的表格终于发现一个更简单的基础模式制作方式——直接用python读取word的第一张表格的内部范围。就可以做出基本列表了 转发给大班组长 哈哈作为班主任我深知“周计划”制作的“痛苦”。
所以有一份班本化的“运动、游戏、个别化”20周安排表绝对受一线教师欢迎——每周贴周计划就变得很简单。