【办公类-16-10-02】“2023下学期 6个中班 自主游戏观察记录(python 排班表系列)

背景需求:

已经制作了本学期的中4班自主游戏观察记录表

【办公类-16-10-01】“2023下学期 中4班 自主游戏观察记录(python 排班表系列)-CSDN博客文章浏览阅读398次,点赞10次,收藏3次。【办公类-16-10-01】“2023下学期 中4班 自主游戏观察记录(python 排班表系列)https://blog.csdn.net/reasonsummer/article/details/136262898

我想给中2、中3、中4、中5、中6、中7班都制作一份《自主游戏观察记录表》

参考《中班游戏场地周次安排表(含“场地”版)》

【办公类-16-07-04】合并版“2023下学期 中班户外游戏(有场地和无场地版,一周一次)”(python 排班表系列)-CSDN博客文章浏览阅读953次,点赞18次,收藏9次。【办公类-16-07-04】合并版“2023下学期 中班户外游戏(有场地和无场地版,一周一次)”(python 排班表系列)https://blog.csdn.net/reasonsummer/article/details/136196822

思路:

循环读取《02贴墙版-中班户外游戏(含场地,有标题).xlsx》的班级标签,,把每个标签里面的A列和C列内容读取出来,写入“数据.xlsx“”

我不想去搜索班主任的姓名了,就用A和B替代,班主任使用表格时,使用查找替换功能,将A B分别变成2位班主任的名字

代码展示:

# -*- coding:utf-8 -*- 1 
'''
自主游戏观察记录模板-中2到中7
作者:阿夏
时间:2024年2月23日
'''
# 一、导入相关模块,设定excel所在文件夹和生成word保存的文件夹
from docxtpl import DocxTemplate
import pandas as pd
import os
import time# # print('----------第0步:读取班级标签,读取指定内容,写入EXCEL----')from openpyxl import load_workbooktitle=[]
for x in range(2,8):title .append('中{}班户外游戏'.format(x))for y in range(len(title)):# 打开1.xlsx文件wb1 = load_workbook(r'C:\Users\jg2yXRZ\OneDrive\桌面\周计划\01自主游戏观察记录模板制作\02贴墙版-中班户外游戏(含场地,有标题).xlsx')# 选择'Sheet2'标签# sheet1 = wb1['中2班户外游戏']sheet1 = wb1['{}'.format(title[y])]# 创建一个新的工作簿2.xlsxwb2 = load_workbook(r'C:\Users\jg2yXRZ\OneDrive\桌面\周计划\01自主游戏观察记录模板制作\数据.xlsx')# 选择默认的活动工作表sheet2 = wb2.active# 读取第A1:A13的内容,并保存到B1:B13for i in range(3, 22):# 项目value = sheet1.cell(row=i, column=3).value    # C列=3  第三行sheet2.cell(row=i-1, column=6).value = value     #  第二张的F列2行# 班级value = sheet1.cell(row=i, column=1).value    # A列=3 中2班v1=value[:1]     # 只要“中"v2=value[1:2]    # 只要“2"sheet2.cell(row=i-1, column=2).value = v1   sheet2.cell(row=i-1, column=3).value = v2   # 保存修改后的2.xlsx文件wb2.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\周计划\01自主游戏观察记录模板制作\数据.xlsx')print('----------第1步:制作路径----')zpath=os.getcwd()+'\\'zpath=r'C:\Users\jg2yXRZ\OneDrive\桌面\周计划\01自主游戏观察记录模板制作'+'\\'file_path=zpath+'零时\\'# print(file_path)# r'\零时Word'print('----------第2步:遍历excel,逐个生成word(form.docx是前面的模板)------------')try:os.mkdir(file_path)except:pass# tpl = DocxTemplate(zpath+'自主游戏观察记录模板.docx')IDcard = pd.read_excel(zpath+'数据.xlsx')week=IDcard["week"] grade = IDcard["grade"]number=IDcard["number"]# str.rstrip()T1=IDcard["T1"]  # str.rstrip()用于去掉换行符T2=IDcard["T2"]  # str.rstrip()用于去掉换行符content=IDcard["content"]  # str.rstrip()用于去掉换行符# math = autho['math']# eng = autho['eng']# 遍历excel行,逐个生成num = IDcard.shape[0]for i in range(num):context = {"week": week[i],"grade": grade[i],"number": number[i],  "T1": T1[i],"T2": T2[i],"content": content[i],  }tpl = DocxTemplate(zpath+'自主游戏观察记录模板.docx')tpl.render(context)# tpl.save(file_path+r"\{} 的身份证.docx".format(name[i]))#tpl.save(file_path+"合并{}.docx".format('%02d'%week[i]))print('----------第3步:doc 文档合并------------') # 合并所有Wordimport win32com.client as win32import osword = win32.gencache.EnsureDispatch('Word.Application')#启动word对象应用word.Visible = Falsefiles = []for filename in os.listdir(file_path):filename = os.path.join(file_path,filename)files.append(filename)#新建合并后的文档(使用模板,进行12个文件夹的合并,把12个文件夹的内容贴到已有的模板(包含0.7边、四分栏))output = word.Documents.Add()for file in files:output.Application.Selection.InsertFile(file)#拼接文档#获取合并后文档的内容doc = output.Range(output.Content.Start, output.Content.End)# 合并wordlspathall=zpath+'{}({})班自主游戏观察记录(202402-202406).docx'.format(grade[i],number[i])output.SaveAs(lspathall) #保存output.Close()print('----------第4步:删除临时文件夹------------')    import shutilshutil.rmtree(file_path) #递归删除文件夹,即:删除非空文件夹

终端循环了6次,中2-中7班

素材及结果展示

举例:中2班

举例:中5班

感悟:

读取EXCEL标签,批量制作{{}}的xlsx数据和word模板

可以快速生成班本化的各类资料模板,让文本格式统一,减少因为格式、内容被迫返工的问题。

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

反序列化字符串逃逸 [安洵杯 2019]easy_serialize_php1

打开题目 $_SESSION是访客与整个网站交互过程中一直存在的公有变量 然后看extract()函数的功能: extract($_POST)就是将post的内容作为这个函数的参数。 extract() 函数从数组中将变量导入到当前的符号表(本题的作用是将_SESSION的两个函数变为post传参) function…

springboot750人职匹配推荐系统

springboot750人职匹配推荐系统 获取源码——》公主号:计算机专业毕设大全

centos7 docker 安装

1.卸载之前docker环境 sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docke…

工业相机工业相机,工业镜头选型,大量资料介绍及参数详细介绍哪里看?

工业相机工业相机,工业镜头选型,大量资料介绍及参数详细介绍哪里看?

网络原理 - HTTP/HTTPS(5)

HTTPS HTTPS也是一个应用层协议.在HTTP协议的基础上引入了一个加密层. HTTP协议内容都是按照文本的方式明文传输的. 这就导致了在传输过程中出现了一些被篡改的情况. 臭名昭著的"运营商劫持" 下载一个天天动听. 未被劫持的效果,点击下载按钮,就会弹出天天动听的…

进阶了解C++(2)——复杂的继承及其底层原理

在上篇文章中,给出了关于继承这部分的相关知识,例如继承的定义,继承与默认成员函数等。本文将针对复杂的继承方式, 1. 复杂的继承方式: 1.1 单继承: class Professor { public:int _age;string _name; }…

【Linux】 faillock 命令使用

faillock 命令 faillock 命令是 PAM (Pluggable Authentication Modules) 的一部分,它被设计用来跟踪失败的登录尝试,并在连续失败尝试超过某个阈值时锁定账户。这个功能可以帮助系统管理员识别和防止暴力破解攻击。当一个用户连续多次输入错误的密码后&…

如何设计一个数模混合芯片?

一、如何设计一个数模混合芯片? 根据需求功能设计数模混合芯片的架构是一个多步骤的过程。以下是一些关键步骤和考虑因素: 需求分析:首先,需要明确数模混合芯片的功能需求。这包括确定模拟电路和数字电路的具体需求,以…

【Python笔记-设计模式】外观模式

一、说明 外观模式是一种结构型设计模式,能为程序库、框架或其他复杂类提供一个统一的接口。 (一) 解决问题 简化复杂系统的接口调用 (二) 使用场景 简化复杂系统:需要一个指向复杂子系统的直接接口, 且该接口的功能有限时重构复杂的代码…

FairyGUI × Cocos Creator 3.x 场景切换

前言 前文提要: FariyGUI Cocos Creator 入门 FairyGUI Cocos Creator 3.x 使用方式 个人demo:https://gitcode.net/qq_36286039/fgui_cocos_demo_dust 个人demo可能会更新其他代码,还请读者阅读本文内容,自行理解并实现。 官…

无人机基础技术,固定翼无人机动力系统技术详解,无人机飞行控制系统技术

推重比选择 推重比,是指无人机发动机推力/拉力与无人机飞行重力之比。该参数是衡量动力系统乃至整机性能的重要参数,很大程度上影响飞行性能。固定翼无人机的动力系统在配置时选择的推重比必须达到或超出设计的推重比。 重量要求 翼载荷是无人机单位面…

可以用来制作硬模空心耳机壳的胶粘剂有哪些种类?

制作耳机壳的胶粘剂有很多种类,常见的有环氧树脂胶水、UV树脂胶、快干胶、热熔胶等。 这些胶粘剂都有不同的特点和适用场景,可以根据自己的需求选择合适的类型。 例如: 环氧树脂胶水具有高温、高强度的特点,适用于需要高强度粘合…

LabVIEW开发FPGA的高速并行视觉检测系统

LabVIEW开发FPGA的高速并行视觉检测系统 随着智能制造的发展,视觉检测在生产线中扮演着越来越重要的角色,尤其是在质量控制方面。传统的基于PLC的视觉检测系统受限于处理速度和准确性,难以满足当前生产需求的高速和高精度要求。为此&#xf…

axios是如何实现的(源码解析)

1 axios的实例与请求流程 在阅读源码之前,先大概了解一下axios实例的属性和请求整体流程,带着这些概念,阅读源码可以轻松不少! 下图是axios实例属性的简图。 可以看到axios的实例上,其实主要就这三个东西&#xff1a…

MIT-BEVFusion系列九--CUDA-BEVFusion部署4 c++解析pytorch导出的tensor数据

目录 创建流打印 engine 信息打印结果内部流程 启动计时功能加载变换矩阵并更新数据(重要)内部实现 该系列文章与qwe一同创作,喜欢的话不妨点个赞。 在create_core方法结束后,我们的视角回到了main.cpp中。继续来看接下来的流程。…

抖店2024新版选品标准如下所示,产品不行,一切都白搭!

我是王路飞。 不管你是跟厂家沟通,还是与达人/主播沟通,都是围绕产品去进行的。 而【产品也是最好的沟通话术】。 尤其是做无货源抖店的商家,更要牢记【选品】这个电商的核心,产品不行,一切都白搭。 今天就给你们聊…

分页功能(jQuery+bootstrap)

效果 pagesManage.html <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>Document</title&g…

浅析SpringBoot框架常见未授权访问漏洞

文章目录 前言Swagger未授权访问RESTful API 设计风格swagger-ui 未授权访问swagger 接口批量探测 Springboot Actuator未授权访问数据利用未授权访问防御手段漏洞自动化检测工具 CVE-2022-22947 RCE漏洞原理分析与复现漏洞自动化利用工具 其他常见未授权访问Druid未授权访问漏…

selenium自动化测试如何定位一闪而过的元素,比如提示信息、提交按钮

这里以登录按钮为例 在当前页面按F12点击控制,在下方输入debugger&#xff0c;点击登录按钮后点击输入debugger的地方按回车&#xff0c;一闪而过的元素就会定住不动就可以定位了

谈谈对BFC的理解

文章目录 一、是什么二、触发条件三、应用场景防止margin重叠&#xff08;塌陷&#xff09;清除内部浮动自适应多栏布局小结 参考文献 一、是什么 我们在页面布局的时候&#xff0c;经常出现以下情况&#xff1a; 这个元素高度怎么没了&#xff1f;这两栏布局怎么没法自适应&…