【办公类-16-07-03】“2023下学期 周计划-户外游戏 每班1周五天相同场地,6周一次循环、有场地、贴墙版”(python 排班表系列)

作品展示——有场地说明

背景需求:

前期做了一份“贴周计划”用的班主任版的户外游戏安排表(中X班19周,没有场地)

【办公类-16-07-02】“2023下学期 周计划-户外游戏 每班1周五天相同场地,6周一次循环”(python 排班表系列)-CSDN博客文章浏览阅读739次,点赞11次,收藏21次。【办公类-16-07-02】“2023下学期 周计划-户外游戏 每班1周五天相同场地,6周一次循环”(python 排班表系列)https://blog.csdn.net/reasonsummer/article/details/136176883

但是这份游戏表中对于“场地”有要求,因此实际日常操作中,每个班级需要看备注,才能知道自己班级的场地,

为了便于班主任知道自己班级每一天的户外游戏场地在哪里,我想在”美术游戏“后面加上”(场地),并对”角色游戏2套“”表演游戏“中的6个班级进行不同的场所备注。

代码展示:


#20230217 '''
2023学年下学期中班户外游戏安排(6个班级 每周玩一个场地5天,第二周轮换 不跳节日,增加场地)
作者:阿夏
时间:2024年2月19日
'''# import sys
# sys.path.append('/path/to/openpyxl')import sys
import random
import xlrd
import xlwt
from openpyxl import load_workbookimport time# '''班主任贴周计划用的(按班级分类)'''
weekweek=19
# int(input('共有几周?(如19周 20)\n'))print('---------第1步:制作每个班级的游戏的总表------')# 本学期:大1,大2,大3,大4,大5,大7,大8,大9班,其中6班空缺,一共有8个大班
gradenum=[]
for g in range(2,8):gradenum.append('中{}班'.format(g))
print(gradenum)
gradenum.insert(0, gradenum.pop())
# ['2','3','4','5','6','7']
print(len(gradenum))# 8L=[]# 班级
L1=[]
L3=[]  
L2=[]
L4=[]
# 这里是8个活动室游戏活动室,因为后面有递进,所以把最后一个 08,放到01前面,这样摆放后面才会正确)
# L3=['美术游戏','角色游戏','建构游戏','表演游戏','沙水游戏','角色游戏']原始
L3=gradenum# 生成6个班级(第1个元素不同)
for i in range(0,len(gradenum)):        # b = L3.pop(0)    # 在班级列表L3中 删除 第1个元素 大1班 先删除08,就是从01开始L3.append(b)  # 在班级列表L3最后 添加 第1个元素# print(L[0])L1.append(L3[0:len(gradenum)])     # 把不断变化的内容添加到L1 # 8个班级游戏活动室“基本元素“构成了L1列表:[['01', '02', '03', '04', '05', '06', '07', '08'], ['02', '03', '04', '05', '06', '07', '08', '01'], ['03', '04', '05', '06', '07', '08', '01', '02'], ['04', '05', '06', '07', '08', '01', '02', '03'], ['05', '06',  
print(L1)
# [['中2班', '中3班', '中4班', '中5班', '中6班', '中7班'], ['中3班', '中4班', '中5班', '中6班', '中7班', '中2班'], ['中4班', '中5班', '中6班', '中7班', '中2班', '中3班'], ['中5班', '中6班', '中7班', '中
# 2班', '中3班', '中4班'], ['中6班', '中7班', '中2班', '中3班', '中4班', '中5班'], ['中7班', '中2班', '中3班', '中4班', '中5班', '中6班']]
print(len(L1))
# 6组基本    # 每周6个班级,基础模板6次 L=班级
for b in range(4):        # 把各班“游戏活动室基本元素8个”循环21次,数量多一点,便于后期提取内容for y in L1:for z in y:    #抽取L1中的一组组内容  L1[0]=['01', '02', '03', '04', '05', '06', '07', '08']、L1[1]=['02', '03', '04', '05', '06', '07', '08', '01'],# 在用 y提取L1[0]中的'01', '02', '03', '04', '05', '06', '07', '08'三个元素L.append(z)     #把y提取的单个元素一个个加到列表里,并且依次循环22次,数量足够多
print(L)
# #    ['中2班', '中3班', '中4班', '中5班', '中6班', '中7班', '中3班', '中4班', '中5班', '中6班', '中7班', '中2班', '中4班', '中5班', '中6班', '中7班', '中2班', '中3班', '中5班', '中6班', '中7班', '中2班', '中3班', '中4班', '中6班', '中7班', '中2班', '中3班', '中4班', '中5班', '中7班', '中2班', '中3班', '中4班', '中5班', '中6班', '中2班', '中3班', '中4班', '中5班', '中6班', '中7班', '中3班', '中4班', '中
# # 5班', '中6班', '中7班', '中2班', '中4班', '中5班', '中6班', '中7班', '中2班', '中3班', '中5班', '中6班', '中7班', '中2班', '中3班', '中4班', '中6班', '中7班', '中2班', '中3班', '中4班', '中5班', '中7 
# # 班', '中2班', '中3班', '中4班', '中5班', '中6班', '中2班', '中3班', '中4班', '中5班', '中6班', '中7班', '中3班', '中4班', '中5班', '中6班', '中7班', '中2班', '中4班', '中5班', '中6班', '中7班', '中2班
# # ', '中3班', '中5班', '中6班', '中7班', '中2班', '中3班', '中4班', '中6班', '中7班', '中2班', '中3班', '中4班', '中5班', '中7班', '中2班', '中3班', '中4班', '中5班', '中6班', '中2班', '中3班', '中4班', '中5班', '中6班', '中7班', '中3班', '中4班', '中5班', '中6班', '中7班', '中2班', '中4班', '中5班', '中6班', '中7班', '中2班', '中3班', '中5班', '中6班', '中7班', '中2班', '中3班', '中4班', '中6班', '中7班', '中2班', '中3班', '中4班', '中5班', '中7班', '中2班', '中3班', '中4班', '中5班', '中6班']
print(len(L))
# # 6组基本变出 144个班级,最后只要114个班级# print('---------第2步:六类游戏乘以19周(只有一个)------')  
L4=['美术游戏(滑梯)','角色游戏','建构游戏(三楼露台)','表演游戏','沙水游戏(中庭)','角色游戏']
L6=[]
for v in range(weekweek):        # 19周a        for w in L4:# for l in range(5):# 美术游戏中1班一周玩5次,角色L6.append(w)
print(L6)
print(len(L6))
# 114# 根据班级,增加角色、表演旁边的场地
# 中2班角色游戏、表演游戏场地——树屋                         中3班角色游戏、表演游戏场地——小农场
# 中4班角色游戏、表演游戏场地——大1班南门口                 中5班角色游戏、表演游戏场地——大3班南门口
# 中6班角色游戏、表演游戏场地——天台                         中7班角色游戏、表演游戏场地——天台# a=len(room)
# 6L5=[]
# coom=['2','3','4','5','6','7']
coom=['2','3','4','5','6','7']
room=['树屋','小农场','大1班南门','大3班南门','天台','天台',]for cc in range(len(L6)):    if L6[cc]=='角色游戏' or L6[cc]=='表演游戏':          for kk in range(len(room)) :if L[cc]=='中{}班'.format(coom[kk]) :L5.append('{}({})'.format(L6[cc],room[kk]))  # if L[cc]=='中2班' :#     L5.append('{}(树屋)'.format(L6[cc]))# if L[cc]=='中3班' :#     L5.append('{}(小农场)'.format(L6[cc]))    # if L[cc]=='中4班' :#     L5.append('{}(大1班南门)'.format(L6[cc]))  # if L[cc]=='中5班' :#     L5.append('{}(大3班南门)'.format(L6[cc]))  # if L[cc]=='中6班' :#     L5.append('{}(天台)'.format(L6[cc]))  # if L[cc]=='中7班':#     L5.append('{}(天台)'.format(L6[cc]))  #  else:L5.append(L6[cc])# L5.append(L6[cc])
print(L5)
print(len(L5))
# 240L7=[]for ff in L5:for ww in range(5):L7.append(ff)
print(L7)
print(len(L7))
# 570/5=114# #     print('---------第2步:如果一周有5天(不考虑跳过假日)------')# 限制19周的     
for j in range(0,int(len(L7)/5)):#第1周L2.append(L7[j*5:j*5+5])
print(L2)
print(len(L2))
# 114
# L2=角色游戏等6类游戏的嵌套列表# # #     # print('---------第3步:如果每周需要跳过假日(考虑跳过假日)------')# # #     # #  每周需要的天数 (跳过节日.如第1周只有2天工作,9月1-2日(周四周五) ,第3周周一是中秋节放假1天,所以只有4个工作日)
# # #     # day=['2','5','4','5','5','2','5','5','5','5','5','5','5','5','5','5','5','4','5','5','2']# # #     # print('中{}班'.format(gradenum[num]))
# # #     # # 第1周
# # #     # for d in range(0,1):          # d=索引数字
# # #     #     print(L[0:int(day[0])]) # 列表有8个活动室项目,但只要其中5个(周一到周五)
# # #     #     L2.append(L[0:int(day[0])]) 
# # #     # # 第2周开始
# # #     # for d in range(1,len(day)):        # 0-21
# # #     #     # print(d+1)
# # #     #     L=L[int(day[d-1]):]  # day[0]=2,
# # #     #     L.append(L) # 将a安排到最后一个座位
# # #     #     print(L[0:int(day[d])])# 列表是八个循环,我只要其中5个
# # #     #     L2.append(L[0:int(day[d])])# # #     # 以下是跳过假日的最初的写法,太长了,研究上面的是2022.9.9-2023.1.17 共21周的假日安排print('---------第4-1步:xls写入)------') 
workbook = xlwt.Workbook()# 新建xls工作簿
sheet = workbook.add_sheet("Sheet")# 新建xls工作簿的工作表的名字是sheet print('---------第4-2步:第1行 写入 星期一等)------')    
weeks = ['班级','周次','星期一','星期二','星期三','星期四','星期五',]
# weeks=['周次','美术游戏','角色游戏','建构游戏','表演游戏','沙水游戏','角色游戏']
week = len(weeks) col=0
for d in range(0, len(weeks)):sheet.write(0,col,weeks[d])         # 因为只有一行,所以就用有两种写法(enumerate和这种)col+= 1 print('---------第4-3步:第2列写入周次)------')    # 第0列 写入“第1周、第2周、第3周……第21周
dates=[]
# 制作第一列的所有文字
for i in range(1,int(weekweek+1)):for r in range(len(L4)):n="第{}周".format('%02d'%i)    # 用遍历方法获得“第1周、第2周、第21周”字样,dates.append(n)          # 添加到列表    s
print(dates)  
print(len(dates))  
#114 # 写入周次
row=1
for d in range(0, len(dates)):sheet.write(row, 1, dates[d])         # 这里enumerate不能用,因为只有一列,所以就用row += 1    print('---------第4-3步:第1列写入班级)------') 
# 写入班级列 L=班级列
row=1
for h in range(0, len(L[:len(dates)])):        # 只要班级列表的前114个        sheet.write(row,0,L[h])         # 因为只有一行,所以就用有两种写法(enumerate和这种)row += 1      print('---------第4-5步:第3-9列写入游戏内容一周五次相同)------') row=1    
#  写入游戏内容列 L2=游戏内容一周五个
for i in range((len(L2))):         # 遍历21组[]的总数for col,item in enumerate(L2[i],2):            # L2[i]=表格内的内容=item,索引数字=colsheet.write(row,col,item)  # row,col,item 行=1、列=索引数字、内容=表格内容 写入第一行第一列row += 1 
#print('---------第5步:xls保存N份工作簿(每份一页)------')             
try:workbook.save(r"C:\Users\jg2yXRZ\OneDrive\桌面\周计划\20240218 下学期中班户外游戏一周五天相同有场地(班主任用).xls")    # 新建保存 只能xlsprint('计划生成成功')
except e:print('失败...')print(e)# print('---------第6步:把1份xls按照班级,分类成N个不同的工作表内(班主任贴周计划用)------')      
# https://blog.csdn.net/xo3ylAF9kGs/article/details/135856653# 切割成同表
import pandas as pd
import osdf = pd.read_excel(r'C:\Users\jg2yXRZ\OneDrive\桌面\周计划\20240218 下学期中班户外游戏一周五天相同有场地(班主任用).xls')writer = pd.ExcelWriter(r'C:\Users\jg2yXRZ\OneDrive\桌面\周计划\20240218 下学期中班户外游戏一周五天相同有场地(班主任用).xls')
df.to_excel(writer, sheet_name='Sheet', index=False)for j in df['班级'].unique():df[df['班级'] == j].to_excel(writer, sheet_name=j+'户外游戏', index=False)writer.save()

不同班级不同的户外游戏内容及不同的场地

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/691778.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

认识TypeScript 中的接口和类

🎬 江城开朗的豌豆:个人主页 🔥 个人专栏 :《 VUE 》 《 javaScript 》 📝 个人网站 :《 江城开朗的豌豆🫛 》 ⛺️ 生活的理想,就是为了理想的生活 ! 目录 接口 类 江城开朗的豌豆 在 TypeScript 中&…

企业办公终端文件数据\资料防泄密管理系统——天锐绿盾 | 防泄密软件——自动智能透明加密保护核心数据资料,防止外泄

其“数据防泄密系统”是一套从源头上保障数据安全和使用安全的加密软件系统,已全面覆盖Linux、Mac、Windows系统,可进行各类型文档加密、音视频加密、源码加密、Cad图纸加密、多种类型设计稿源文件加密。 PC端:https://isite.baidu.com/site/…

移动通信相关知识学习笔记

一、移动通信架构简图 移动无线的接入网是专指各种基站设备。核心网就是各种交换机。 二、无线信号基本原理 无线网络中,使用AP设备和天线来实现有线和无线信号互相转换。如上图所示,有线网络侧的数据从AP设备的有线接口进入AP后,经AP处理为…

Maxwell - 增量数据同步工具

前言 今天来学习一个新的大数据小工具 Maxwell ,它和 Sqoop 很像。Sqoop主要用于在 Hadoop (比如 HDFS、Hive、HBase 等)和关系型数据库之间进行数据的批量导入和导出,而 Maxwell 则主要用于监控数据库的变化(通过监控…

基于MATLAB的QPSK调制解调仿真(仿真图超多,结果超清晰)

基于MATLAB的QPSK调制解调仿真(包含中间各个环节的时域波形、功率谱、频谱图、星座图和眼图、理论与仿真的误码率曲线) 目录 前言 一、QPSK调制解调过程 二、仿真结果 Ⅰ、码元信噪比eb/n010dB时 1、双极性不归零基带信号 2、成型滤波(根升余弦滤波)后 3、调制后 4、加入…

Linux CentOS stream 9 firewalld

随着互联网行业快速发展,服务器成为用户部署网络业务重要的网络工具,但随之而来的就是更密集的网络攻击,这给网站带来了很大的阻碍。防火墙作为保障网络安全的主要设备,可以很好的抵御网络攻击。 防火墙基本上使用硬件和软件两种…

深度学习(16)--基于经典网络架构resnet训练图像分类模型

目录 一.项目介绍 二.项目流程详解 2.1.引入所需的工具包 2.2.数据读取和预处理 2.3.加载resnet152模型 2.4.初始化模型 2.5.设置需要更新的参数 2.6.训练模块设置 2.7.再次训练所有层 2.8.测试网络效果 三.完整代码 一.项目介绍 使用PyTorch工具包调用经典网络架构…

PCIe学习笔记(2)错误处理和AER/DPC功能

文章目录 PCIe ErrorAER (Advanced Error Reporting)DPC (Downstream Port Containment) 处理器上错误通常可分为detected和undetected error。Undetected errors可能变得良性(benign),也可能导致系统故障如silent data corruptions (SDC)。Detected errors则又可分…

MySQL基础学习

MySQL基础 注意:本文的图片截图自尚硅谷MySQL笔记。 一:基本概述: 什么是数据库: 数据库是一种用来存储和管理数据的系统。它是一个组织化的数据集合,可以通过计算机系统进行访问、管理和更新。数据库可以存储各种…

如何使用CloakQuest3r获取受安全服务保护的网站真实IP地址

关于CloakQuest3r CloakQuest3r是一款功能强大的纯Python工具,该工具可以帮助广大研究人员获取和查看受Cloudflare和其他安全服务商保护的网站真实IP地址。 Cloudflare是一种广泛采用的网络安全和性能增强服务,而CloakQuest3r的核心任务就是准确识别隐…

怎么在抖音带自己的货?带货方式和带货要求,如下所示

我是王路飞。 不管你是无货源的新手小白,还是有货源的厂家/供应链,想在抖音卖货的话,无非就两种方式:要么开店、要么开直播带货。 看似都是在抖音卖货,但其实这是两条不同的赛道。 这篇文章就给你们聊下想在抖音卖货…

【Redis】理论进阶篇------Redis的持久化

一、前言 前面学习了Redis的相关的十大数据类型以及用SpringBoot集成我们的Redis的工具代码的书写。从这篇文章开始,就会从Redis相关的一些理论(也是面试和工作的热点知识)如:Redis的持久化、Redis的订阅发布模型、Redis集群环境搭…

用python绘制黄金价格变化曲线

首先你得从mt4把数据导出为csv:mt4如何导出数据-CSDN博客 1、引入必要的库 import numpy as np import pandas as pd import matplotlib.pyplot as plt 2、然后通过pandas载入csv数据 raw pd.read_csv("XAUUSDm1.csv", headerNone, index_colNone, p…

P1024 [NOIP2001 提高组] 一元三次方程求解题解

题目 有形如:这样的一个一元三次方程。给出该方程中各项的系数(a,b,c,d均为实数),并约定该方程存在三个不同实根(根的范围在−100至100之间),且根与根之差的绝对值≥1。要求由小到大依次在同一…

文件包含+文件上传漏洞(图片马绕过)

目录 一.文件包含二.文件上传三.图片马四.题目 一.文件包含 将已有的代码以文件形式包含到某个指定的代码中,从而使用其中的代码或者数据,一般是为了方便直接调用所需文件,文件包含的存在使得开发变得更加灵活和方便(若对用户输入…

网络安全-pikachu之文件上传漏洞1

文件上传漏洞是危害极大的,一旦成功,可以获取服务器的最高权限。 pikachu介绍: 文件上传功能在web应用系统很常见,比如很多网站注册的时候需要上传头像、上传附件等等。当用户点击上传按钮后,后台会对上传的文件进行判…

☀️将大华摄像头画面接入Unity 【1】配置硬件和初始化摄像头

一、硬件准备 目前的设想是后期采用网口供电的形式把画面传出来,所以这边我除了大华摄像头还准备了POE供电交换机,为了方便索性都用大华的了,然后全都连接电脑主机即可。 二、软件准备 这边初始化摄像头需要用到大华的Configtool软件&#…

【知识点】CNN中concat与add的区别

cat操作经常用于将特征联合,多个卷积特征提取框架提取的特征融合或者是将输出层的信息进行融合;而add层更像是信息之间的叠加。 add是在一个特征上增加其语义信息,对最终的图像的分类是有益;cat导致的结果改进可能是由于cat操作通…

工业自动化部署选择主板的关键因素

**在构建任何计算机时,选择合适的主板至关重要。**对于游戏台式机,您需要选择能够支持您玩的游戏类型而不会出现任何问题的最新和最佳规格。当涉及工业应用时,影响您决策的变量变得更加重要。作为任何基于计算的应用中最关键的组件之一&#…

搜维尔科技:分析OptiTrack光学动作捕捉应用领域!

虚拟制作 当今虚拟制作阶段低延迟、超精确摄像机跟踪的事实上的标准。 用于运动科学的 OptiTrack OptiTrack 系统提供世界领先的测量精度和简单易用的工作流程,为研究人员和生物力学师的研究提供理想的 3D 跟踪数据。对所有主要数字测力台、EMG 和模拟设备的本机即…