【办公类-90-02】】20250215大班周计划四类活动的写法(分散运动、户外游戏、个别化综合)(基础列表采用
- 其他
- 2025-09-06 20:06:01

背景需求: 做了中班的四类活动安排表,我顺便给大班做一套
【办公类-90-01】】20250213中班周计划四类活动的写法(分散运动、户外游戏、个别化(美工室图书吧探索室))-CSDN博客文章浏览阅读874次,点赞10次,收藏11次。【办公类-90-01】】20250213中班周计划四类活动的写法(分散运动、户外游戏、个别化(美工室图书吧探索室)) blog.csdn.net/reasonsummer/article/details/145626428?sharetype=blogdetail&sharerId=145626428&sharerefer=PC&sharesource=reasonsummer&spm=1011.2480.3001.8118
编号 代码复制 总园中班大班的规则是差不多的 1,运动从一周五个项目变成了一个项目 2、游戏从一周五个项目变成了一个项目。 3、个别化—和中班不同,只要写一个项目,而不是美工、图书、探索 一、分散运动 和中班的运动设计思路一样,只是5周循环,改成7周循环。 但是它的场地不是按序递增,而是1475326. 但是它也是有规律的,第二行是从第一行的索引3开始提取 可以循环3次21周,49*3=147,但是实际20周20*5=140。 因此,我需要 在总表里遍历,直接删除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个 zc=w*xz # 循环次数,多一点 y = 3 print(y) print('---------第1步:把8个运动场地循环21次(105元素组成的列表)------') # 本学期:总园大班只有5个 gradenum = ['1','2', '3', '4', '5', '6','7'] path = r"C:\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 * 20 sp=[] # 添加第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)) # 140 classroom=[] for x in range(y): # 4 for 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): # 4 for o in range(xz): # x=5 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开始写入classroom,B2开始写入week,C2开始写入sport for i in range(len(classroom)): ws[f'A{i + 2}'] = classroom[i] ws[f'B{i + 2}'] = week[i] ws[f'C{i + 2}'] = sport[i] # 将总表内容按照班级拆分到同一个工作簿的不同工作表大,标签为“班级+分散运动安排” for grade in gradenum: ws_new = wb.create_sheet(title=f'大{grade}班分散运动安排') ws_new['A1'] = '班级' ws_new['B1'] = '周次' ws_new['C1'] = '运动场地' row = 2 for i in range(len(classroom)): if classroom[i].startswith(f'大{grade}'): ws_new[f'A{row}'] = classroom[i] ws_new[f'B{row}'] = week[i] ws_new[f'C{row}'] = sport[i] row += 1 # 保存到文件 output_file = path + r'\01 大班分散运动..xlsx' wb.save(output_file) print(f"Excel文件已保存到: {output_file}") # 删除最后一行“第21周” # 重新打开保存的文件以进行进一步操作 wb = openpyxl.load_workbook(output_file) # 遍历所有工作表,删除最后一行 for sheet_name in wb.sheetnames: ws = wb[sheet_name] max_row = ws.max_row if 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周和21,19在 # 再次保存修改后的文件 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个 zc=w*xz # 循环次数,多一点 y = 3 print(y) print('---------第1步:把8个游戏场地循环21次(105元素组成的列表)------') # 本学期:总园大班只有5个 gradenum = ['1','2', '3', '4', '5', '6','7'] path = r"C:\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 * 20 sp=[] # 添加第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)) # 140 classroom=[] for x in range(y): # 4 for 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): # 4 for o in range(xz): # x=5 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开始写入classroom,B2开始写入week,C2开始写入game for i in range(len(classroom)): ws[f'A{i + 2}'] = classroom[i] ws[f'B{i + 2}'] = week[i] ws[f'C{i + 2}'] = game[i] # 将总表内容按照班级拆分到同一个工作簿的不同工作表大,标签为“班级+分散游戏安排” for grade in gradenum: ws_new = wb.create_sheet(title=f'大{grade}班分散游戏安排') ws_new['A1'] = '班级' ws_new['B1'] = '周次' ws_new['C1'] = '游戏场地' row = 2 for i in range(len(classroom)): if classroom[i].startswith(f'大{grade}'): ws_new[f'A{row}'] = classroom[i] ws_new[f'B{row}'] = week[i] ws_new[f'C{row}'] = game[i] row += 1 # 保存到文件 output_file = path + r'\02 大班分散游戏..xlsx' wb.save(output_file) print(f"Excel文件已保存到: {output_file}") # 删除最后一行“第21周” # 重新打开保存的文件以进行进一步操作 wb = openpyxl.load_workbook(output_file) # 遍历所有工作表,删除最后一行 for sheet_name in wb.sheetnames: ws = wb[sheet_name] max_row = ws.max_row if 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个 zc=w*xz # 循环次数,多一点 y = 3 print(y) print('---------第1步:把8个个别化场地循环21次(105元素组成的列表)------') # 本学期:总园大班只有5个 gradenum = ['1','2', '3', '4', '5', '6','7'] path = r"C:\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:i+7] 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)) # 140 classroom=[] for x in range(y): # 4 for 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): # 4 for o in range(xz): # x=5 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'] = '个别化场地' aa=classroom[:7] # 探索室 bb=[’四] cc= # 从A2开始写入classroom,B2开始写入week,C2开始写入study for i in range(len(classroom)): ws[f'A{i + 2}'] = classroom[i] ws[f'B{i + 2}'] = week[i] ws[f'C{i + 2}'] = study[i] ws[f'C{i + 2}'] = '本周'+study[i]+'活动。' # 将总表内容按照班级拆分到同一个工作簿的不同工作表大,标签为“班级+分散个别化安排” for grade in gradenum: ws_new = wb.create_sheet(title=f'大{grade}班分散个别化安排') ws_new['A1'] = '班级' ws_new['B1'] = '周次' ws_new['C1'] = '个别化场地' row = 2 for i in range(len(classroom)): if classroom[i].startswith(f'大{grade}'): ws_new[f'A{row}'] = classroom[i] ws_new[f'B{row}'] = week[i] ws_new[f'C{row}'] = study[i] # ws_new[f'C{row}'] = '本周'+study[i]+'活动。' row += 1 # 保存到文件 output_file = path + r'\03 大班个别化学习..xlsx' wb.save(output_file) print(f"Excel文件已保存到: {output_file}") # 删除最后一行“第21周” # 重新打开保存的文件以进行进一步操作 wb = openpyxl.load_workbook(output_file) # 遍历所有工作表,删除最后一行 for sheet_name in wb.sheetnames: ws = wb[sheet_name] max_row = ws.max_row if 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个 zc=w*xz # 循环次数,多一点 y = 3 print(y) print('---------第1步:把8个个别化场地循环21次(105元素组成的列表)------') # 本学期:总园大班只有5个 gradenum = ['1','2', '3', '4', '5', '6','7'] path = r"C:\Users\jg2yXRZ\OneDrive\桌面\202502 大班3类活动批量" # 新建一个”装N份word和PDF“的文件夹 study = [] classroom = [] week = [] # for x in range(y): # 4 # 初始化基础模型 from docx import Document # 打开Word文档 doc = Document(path+r'\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).text print(f"Original cell content: {cell}") # 检查单元格内容是否包含目标汉字 for char in target_chars: if char in cell: # 将汉字加到单元格内容的前面,并舍弃最后4个字符 modified_cell = char + cell[:-4] cell_values.append(modified_cell) break else: # 如果单元格内容不包含目标汉字,直接添加原始内容 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:i+7] 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)) # 140 classroom=[] for x in range(y): # 4 for 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): # 4 for o in range(xz): # x=5 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开始写入classroom,B2开始写入week,C2开始写入study for i in range(len(classroom)): ws[f'A{i + 2}'] = classroom[i] ws[f'B{i + 2}'] = week[i] ws[f'C{i + 2}'] = study[i] ws[f'C{i + 2}'] = '本周'+study[i]+'活动。' # 将总表内容按照班级拆分到同一个工作簿的不同工作表大,标签为“班级+分散个别化安排” for grade in gradenum: ws_new = wb.create_sheet(title=f'大{grade}班分散个别化安排') ws_new['A1'] = '班级' ws_new['B1'] = '周次' ws_new['C1'] = '个别化场地' row = 2 for i in range(len(classroom)): if classroom[i].startswith(f'大{grade}'): ws_new[f'A{row}'] = classroom[i] ws_new[f'B{row}'] = week[i] # ws_new[f'C{row}'] = study[i] ws_new[f'C{row}'] = '本周'+study[i]+'活动。' row += 1 # 保存到文件 output_file = path + r'\03 大班个别化学习..xlsx' wb.save(output_file) print(f"Excel文件已保存到: {output_file}") # 删除最后一行“第21周” # 重新打开保存的文件以进行进一步操作 wb = openpyxl.load_workbook(output_file) # 遍历所有工作表,删除最后一行 for sheet_name in wb.sheetnames: ws = wb[sheet_name] max_row = ws.max_row if 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 = r'C:\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已经在其他地方定义 n=1 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 = None for target_sheet_name in ws_copy.parent.sheetnames: if sheet_name[:3] == target_sheet_name[:3]: matched_sheet = target_sheet_name break if matched_sheet: print(f"正在处理工作表: {sheet_name} -> {matched_sheet}") # 读取源工作表的C列数据(包括标题) source_df = pd.read_excel(file_path, sheet_name=sheet_name, usecols='C') 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(row=1, column=n+3).value = column_name # Column n+4 corresponds to 'D', 'E', 'F', etc. # 然后写入数据 for i, value in enumerate(source_df[column_name], start=2): # Start from row 2 to leave space for the header target_ws.cell(row=i, column=n+3).value = value # 复制源单元格样式到目标单元格 source_cell = wb_source[sheet_name].cell(row=i, column=3) # Source cell is in column C (index 3) target_cell = target_ws.cell(row=i, column=n+4) else: print(f"Column '{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 = 0 column = col[0].column_letter # Get the column name for cell in col: try: if len(str(cell.value)) > max_length: max_length = len(str(cell.value)) except: pass adjusted_width = (max_length + 2) * 1.8 # Adding a little extra space ws.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的第一张表格的内部范围。就可以做出基本列表了!【办公类-90-02】】20250215大班周计划四类活动的写法(分散运动、户外游戏、个别化综合)(基础列表采用由讯客互联其他栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“【办公类-90-02】】20250215大班周计划四类活动的写法(分散运动、户外游戏、个别化综合)(基础列表采用”