【办公类-】周计划-洗牌提取《集体运动》名称
创始人
2025-05-29 09:28:26
0

背景需求:

新的周计划模板上有一个“运动-集体游戏”栏目。内容来自参考用书《运动》

根据新要求,周一的运动集体游戏必须是新的,周二的运动集体游戏来自前一周的内容,因此可以判定写法如下:

星期

星期一

星期二

星期三

星期四

星期五

第1周

新A

新B

新A

新B

新A

第2周

新C

旧A

新C

旧A

新C

第3周

新D

旧C

新D

旧C

新D

需求:

我不想再每周翻阅《运动》,找相关的运动项目填写周计划。

更希望运用Python自动从《运动》的相关项目中进行随机不重复的提取。

操作过程:

一、扫描图片获得运动文本

1、扫描获得《运动》的内容目录

多页目录扫描图片

2、用文字识别工具提取目录

3、EXCEL贴目录

填充空格,数据分类

形成四个表格

4、内容确定

可以用于模板填写的运动内容,只有第二项“基本动作活动”

基本动作分为三类:

(1)走跑跳( 小班、中班、大班)

(2)钻爬( 小班、中班、大班)

(3)投掷( 小班、中班、大班)

结果:从“基本动作”里面选择“中班”,把所有中班能用的运动复制在一张表格里。

二、写代码

1、从EXCLE提取项目名称,根据“走跑、攀爬、投掷”类型分别提取3个列表。

2、按顺序提取的列表内容进行洗牌打乱,组合成27个运动内容的列表(防止N个班级抽取内容都一样)

3、从27个内容中进行循环提取,组合成最终的样式

4、两个一组提取

5、写入表格

代码展示

'''
目的:自动从集体运动中抽取2个一组的项目 第1周 A B 第2周C A 第3周D C
作者:阿夏
时间:2023年3月16日'''print('-------------第1步,读取EXCLE 提取运动列表----------------')
import os
import xlrd
import random
num=int(input('一共几周?\n'))datapath= r'D:\test\02办公类\11集体游戏\运动书的目录.xlsx'   #存放图片的文件夹
x1 = xlrd.open_workbook(datapath)#读取excel
sheet1 = x1.sheet_by_name("中班基本运动抽取")#读取sheet1idlist = sheet1.col_values(3)#第三列是运动名称存放第一列
print(idlist)
# ['运动', '长臂人', '马术表演', '看谁不出圈', '潜水员', '拔鸡毛', '好伙伴', '老狼老狼几点了', '筑路', '击泡泡', '走路的纸人', '跳路阶', '海上救援', '拉圈快走', '母鸡与小鸡', '踩脚印', '猫头鹰抓田
# 鼠', '我是滑稽人', '高个子', '快速占圈', '打高尔夫球', '穿越草地', '丢手绢', '笃笃笃,卖糖粥', '贴人', '鼠与猫', '有趣的通道', '骆驼运粮', '动物与树林', '爬行动物表演', '刺猬背枣子', '小花狗和小
# 猕猴', '狗熊钻圈', '五彩路', '吸尘器', '乌龟搬家', '弟妹追拍', '鳄鱼和猴子', '甲壳虫', '大蟒蛇', '运水', '纱巾飞扬', '流星球', '击点', '打怪兽', '打保龄球', '套玩具', '瞄准投物', '你投我挡', '打
# # 水怪']# 提取目录,并打乱顺序
l1=idlist[1:25]# 按顺序抽取所有 ——1以走、跑、跳为主的活动,   
# print(l1)
# ['长臂人', '马术表演', '看谁不出圈', '潜水员', '拔鸡毛', '好伙伴', '老狼老狼几点了', '筑路', '击泡泡', '走路的纸人', '跳路阶', '海上救援', '拉圈快走', '母鸡与小鸡', '踩脚印', '猫头鹰抓田鼠', '我
# 是滑稽人', '高个子', '快速占圈', '打高尔夫球', '穿越草地', '丢手绢', '笃笃笃,卖糖粥', '贴人']
l2=idlist[25:41]# 按顺序抽取所有——2以钻、攀爬为主的活动
# print(l2)
# ['鼠与猫', '有趣的通道', '骆驼运粮', '动物与树林', '爬行动物表演', '刺猬背枣子', '小花狗和小猕猴', '狗熊钻圈', '五彩路', '吸尘器', '乌龟搬家', '弟妹追拍', '鳄鱼和猴子', '甲壳虫', '大蟒蛇', '运水']
l3=idlist[41:50]# 按顺序抽取所有——3以投掷为主的活动
# print(l3)
# ['纱巾飞扬', '流星球', '击点', '打怪兽', '打保龄球', '套玩具', '瞄准投物', '你投我挡', '打水怪']print('-------------第2步,打乱3类中的运动项目前后顺序,循环抽取3个=2周  ----------------')
random.shuffle(l1) # 打乱顺序
random.shuffle(l2) # 打乱顺序
random.shuffle(l3) # 打乱顺序
# print(l1)
# print(l2)
# print(l3)list=[]
for x in range(len(l3)):    # l3最少,只有9条,所以遍历最多9次list.append(l1[x])      #抽取的还是l1的内容 list.append(l2[x])      #抽取的还是l1的内容 list.append(l3[x])      #抽取的还是l1的内容 
print(list)
# 每次抽取的都不一样
# 第一次['拔鸡毛', '爬行动物表演', '你投我挡', '高个子', '鳄鱼和猴子', '打水怪', '拉圈快走', '弟妹追拍', '击点', '猫头鹰抓田鼠', '骆驼运粮', '纱巾飞扬', '马术表演', '吸尘器', '流星球', '打高尔夫球', '大
# 蟒蛇', '瞄准投物', '贴人', '狗熊钻圈', '打保龄球', '走路的纸人', '甲壳虫', '打怪兽', '看谁不出圈', '刺猬背枣子', '套玩具']
# 第二次['看谁不出圈', '小花狗和小猕猴', '瞄准投物', '打高尔夫球', '动物与树林', '打怪兽', '贴人', '运水', '你投我挡', '拉圈快走', '五彩路', '流星球', '走路的纸人', '甲壳虫', '打水怪', '丢手绢', '狗熊钻
# 圈', '纱巾飞扬', '老狼老狼几点了', '大蟒蛇', '打保龄球', '猫头鹰抓田鼠', '鼠与猫', '套玩具', '快速占圈', '爬行动物表演', '击点']# print('-------------第3步,做成AB结构的一串列表(abcadced)  ----------------')list_all=[]
# 第1周提取0和1
list_all.append(list[0])
list_all.append(list[1])
# print(list_all)
# 第2周提取2和0
list_all.append(list[2])
list_all.append(list[0])
print(list_all)
# # # 第3-X周提取3和2 (x和x-1)
for i in range(3,len(list)):list_all.append(list[i])list_all.append(list[i-1])
print(list_all)
print(len(list_all))# print('-------------第4步,拆分2天一组 工52组, ----------------')
list_all_all=[]
for b in range(len(list_all)):list_all_all.append(list_all[b*2:b*2+2])
print(list_all_all)
# [['老狼老狼几点了', '鳄鱼和猴子'], ['打水怪', '老狼老狼几点了'], ['穿越草地', '打水怪'], ['小花狗和小猕猴', '穿越草地'], ['纱巾飞扬', '小花狗和小猕猴'], ['好伙伴', '纱巾飞扬'], ['吸尘器', '好伙 
# 伴'], ['瞄准投物', '吸尘器'], ['长臂人', '瞄准投物'], ['爬行动物表演', '长臂人'], ['你投我挡', '爬行动物表演'], ['海上救援', '你投我挡'], ['大蟒蛇', '海上救援'], ['流星球', '大蟒蛇'], ['丢手绢', '流星球'], ['乌龟搬家', '丢手绢'], ['击点', '乌龟搬家'], ['踩脚印', '击点'], ['甲壳虫', '踩脚印'], ['套玩具', '甲壳虫'], ['拔鸡毛', '套玩具'], ['五彩路', '拔鸡毛'], ['打保龄球', '五彩路'], ['笃
# 笃笃,卖糖粥', '打保龄球'], ['刺猬背枣子', '笃笃笃,卖糖粥'], ['打怪兽', '刺猬背枣子'], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []]   
# # ['老狼老狼几点了', '鳄鱼和猴子']for c in list_all_all[0:num]:    # 只要20周,列表9*3=27组print(c)
# ['老狼老狼几点了', '鳄鱼和猴子']
# ['打水怪', '老狼老狼几点了']
# ['穿越草地', '打水怪']
# ['小花狗和小猕猴', '穿越草地']
# ['纱巾飞扬', '小花狗和小猕猴']
# ['好伙伴', '纱巾飞扬']
# ['吸尘器', '好伙伴']
# ['瞄准投物', '吸尘器']
# ['长臂人', '瞄准投物']
# ['爬行动物表演', '长臂人']
# ['你投我挡', '爬行动物表演']
# ['海上救援', '你投我挡']
# ['大蟒蛇', '海上救援']
# ['流星球', '大蟒蛇']
# ['丢手绢', '流星球']
# ['乌龟搬家', '丢手绢']
# ['击点', '乌龟搬家']
# ['踩脚印', '击点']
# ['甲壳虫', '踩脚印']
# ['套玩具', '甲壳虫']# print('-------------第4步,拆分2天一组 工52组, ----------------')
print('---------第4步:xls写入)------') 
import xlwt
workbook = xlwt.Workbook()# 新建xls工作簿
sheet = workbook.add_sheet("Sheet")# 新建xls工作簿的工作表的名字是sheet # # 第0列 写入“大1班、大2班
# dates=[]
# # for i in range(0,len(num)):
# for i in range(0,len(num)):        
#     print(i)            
#     n='大{}班'.format(num[i])         # 用遍历方法获得“大1班、大2班
#     dates.append(n) 
# print(dates)   
#                 # 添加到列表    # row=1
# for d in range(0, len(dates)):
#     sheet.write(row, 0, dates[d])         # 这里enumerate不能用,因为只有一列,所以就用
#     row += 1    # 第0列 写入“第2周、第3周……第21周
dates=[]
# for i in range(0,len(num)):
for i in range(1,num+1):        print(i)            n="第{}周".format(i)    # 用遍历方法获得“第1周、第2周、第21周”字样,dates.append(n) 
print(dates)   # 添加到列表    
# print(dates)        
# print(date)row=1
for d in range(0, len(dates)):sheet.write(row, 0, dates[d])         # 这里enumerate不能用,因为只有一列,所以就用row += 1    # 第0行 写入 星期一  '星期二','星期三','星期四','星期五  #
weeks = ['周次','周一','周二','周三','周四','周五']
week = len(weeks) col=0
for d in range(0, len(weeks)):sheet.write(0,col,weeks[d])         # 因为只有一行,所以就用有两种写法(enumerate和这种)col+= 1  # 第B2开始写入 活动室内容
arrlan = len(list_all_all[0:num])
row = 1     # 第2行
for i in range(arrlan):         # 遍历21组[]的总数for col,item in enumerate(list_all_all[i],1):            # L2[i]=表格内的内容=item,索引数字=colsheet.write(row,col,item)  # row,col,item 行=1、列=索引数字、内容=表格内容 写入第一行第一列row += 1   print('---------第5步:xls保存N份工作簿(每份一页)------')             
try:workbook.save(r"D:\test\02办公类\11集体游戏\分散运动一个班级(1周2天样式).xls")    # 新建保存 只能xlsprint('计划生成成功')
except e:print('失败...')print(e)

两天一组 保存效果

随机生成1

随机生成2

小结:

1、因为我批量做周计划模板里面只需要两个基本的AB样式即可(word里面自动复制黏贴周三、周四、周五的内容)所以这里没有批量5天的内容。

2、通过这种抽取,可以实现运动技能的均衡(“走跑跳、平衡、投掷”连续滚动出现)”,

3、洗牌抽取,为批量制作多个班级的运动内容打下基础(班级与班级之间不会重复)

PS:既然做了2天,还是做一套5天样式。

核心:加一段6抽5空1的的代码

'''
目的:自动从集体运动中抽取2个一组的项目 第1周 A B 第2周C A 第3周D C
作者:阿夏
时间:2023年3月16日'''print('-------------第1步,读取EXCLE 提取运动列表----------------')
import os
import xlrd
import randomnum=int(input('一共几周?\n'))datapath= r'D:\test\02办公类\11集体游戏\运动书的目录.xlsx'   #存放图片的文件夹
x1 = xlrd.open_workbook(datapath)#读取excel
sheet1 = x1.sheet_by_name("中班基本运动抽取")#读取sheet1idlist = sheet1.col_values(3)#第三列是运动名称存放第一列
print(idlist)
# ['运动', '长臂人', '马术表演', '看谁不出圈', '潜水员', '拔鸡毛', '好伙伴', '老狼老狼几点了', '筑路', '击泡泡', '走路的纸人', '跳路阶', '海上救援', '拉圈快走', '母鸡与小鸡', '踩脚印', '猫头鹰抓田
# 鼠', '我是滑稽人', '高个子', '快速占圈', '打高尔夫球', '穿越草地', '丢手绢', '笃笃笃,卖糖粥', '贴人', '鼠与猫', '有趣的通道', '骆驼运粮', '动物与树林', '爬行动物表演', '刺猬背枣子', '小花狗和小
# 猕猴', '狗熊钻圈', '五彩路', '吸尘器', '乌龟搬家', '弟妹追拍', '鳄鱼和猴子', '甲壳虫', '大蟒蛇', '运水', '纱巾飞扬', '流星球', '击点', '打怪兽', '打保龄球', '套玩具', '瞄准投物', '你投我挡', '打
# # 水怪']# 提取目录,并打乱顺序
l1=idlist[1:25]# 按顺序抽取所有 ——1以走、跑、跳为主的活动,   
# print(l1)
# ['长臂人', '马术表演', '看谁不出圈', '潜水员', '拔鸡毛', '好伙伴', '老狼老狼几点了', '筑路', '击泡泡', '走路的纸人', '跳路阶', '海上救援', '拉圈快走', '母鸡与小鸡', '踩脚印', '猫头鹰抓田鼠', '我
# 是滑稽人', '高个子', '快速占圈', '打高尔夫球', '穿越草地', '丢手绢', '笃笃笃,卖糖粥', '贴人']
l2=idlist[25:41]# 按顺序抽取所有——2以钻、攀爬为主的活动
# print(l2)
# ['鼠与猫', '有趣的通道', '骆驼运粮', '动物与树林', '爬行动物表演', '刺猬背枣子', '小花狗和小猕猴', '狗熊钻圈', '五彩路', '吸尘器', '乌龟搬家', '弟妹追拍', '鳄鱼和猴子', '甲壳虫', '大蟒蛇', '运水']
l3=idlist[41:50]# 按顺序抽取所有——3以投掷为主的活动
# print(l3)
# ['纱巾飞扬', '流星球', '击点', '打怪兽', '打保龄球', '套玩具', '瞄准投物', '你投我挡', '打水怪']print('-------------第2步,打乱3类中的运动项目前后顺序,循环抽取3个=2周  ----------------')
random.shuffle(l1) # 打乱顺序
random.shuffle(l2) # 打乱顺序
random.shuffle(l3) # 打乱顺序
# print(l1)
# print(l2)
# print(l3)list=[]
for x in range(len(l3)):    # l3最少,只有9条,所以遍历最多9次list.append(l1[x])      #抽取的还是l1的内容 list.append(l2[x])      #抽取的还是l1的内容 list.append(l3[x])      #抽取的还是l1的内容 
print(list)
# 每次抽取的都不一样
# 第一次['拔鸡毛', '爬行动物表演', '你投我挡', '高个子', '鳄鱼和猴子', '打水怪', '拉圈快走', '弟妹追拍', '击点', '猫头鹰抓田鼠', '骆驼运粮', '纱巾飞扬', '马术表演', '吸尘器', '流星球', '打高尔夫球', '大
# 蟒蛇', '瞄准投物', '贴人', '狗熊钻圈', '打保龄球', '走路的纸人', '甲壳虫', '打怪兽', '看谁不出圈', '刺猬背枣子', '套玩具']
# 第二次['看谁不出圈', '小花狗和小猕猴', '瞄准投物', '打高尔夫球', '动物与树林', '打怪兽', '贴人', '运水', '你投我挡', '拉圈快走', '五彩路', '流星球', '走路的纸人', '甲壳虫', '打水怪', '丢手绢', '狗熊钻
# 圈', '纱巾飞扬', '老狼老狼几点了', '大蟒蛇', '打保龄球', '猫头鹰抓田鼠', '鼠与猫', '套玩具', '快速占圈', '爬行动物表演', '击点']# print('-------------第3步,做成AB结构的一串列表(abcadced)  ----------------')list_all=[]
# 第1周提取0和1
list_all.append(list[0])
list_all.append(list[1])
# print(list_all)
# 第2周提取2和0
list_all.append(list[2])
list_all.append(list[0])
print(list_all)
# # # 第3-X周提取3和2 (x和x-1)
for i in range(3,len(list)):list_all.append(list[i])list_all.append(list[i-1])
# print(list_all)
# print(len(list_all))# print('-------------第4步,做成5天样式, ----------------')
list_all_all=[]e=[]
h=[]
for i in range(0,len(list_all)):c=list_all[i*2:i*2+2]print(c)    for f in range(3): # 2天样式做成3次=6组for d in range(len(c)):               e.append(c[d])        #    2天变成 6组样子for g in range(0,len(e),6):    # 0-e的个数 之间,每隔6,取一个数字 0 6 12 18    list_all_all.append(e[g:g+5])  # 第1周 索引0-5 (空掉5),第2周,索引6-11(空11)。索引间隔6,前一个数+5等于后一个数print(list_all_all)  # 现在是5个一组
# [['猫头鹰抓田鼠', '动物与树林', '猫头鹰抓田鼠', '动物与树林', '猫头鹰抓田鼠'], 
# ['套玩具', '猫头鹰抓田鼠', '套玩具', '猫头鹰抓田鼠', '套玩具'], 
# ['笃笃笃,卖糖粥', '套玩具', '笃笃笃,卖糖粥', '套玩具', '笃笃笃,卖糖粥'], 
# ['鼠与猫', '笃笃笃,卖糖粥', '鼠与猫', '笃笃笃,卖糖粥', '鼠与猫'], 
# ['击点', '鼠与猫', '击点', '鼠与猫', '击点'], 
# ['老狼老狼几点了', '击点', '老狼老狼几点了', '击点', '老狼老狼几点了',]] # # print('-------------第4步,拆分5天一组 工52组, ----------------')for b in list_all_all[0:num]:print(b)# ['走路的纸人', '击点', '走路的纸人', '击点', '走路的纸人']
# ['动物与树林', '走路的纸人', '动物与树林', '走路的纸人', '动物与树林']
# ['打保龄球', '动物与树林', '打保龄球', '动物与树林', '打保龄球']
# ['好伙伴', '打保龄球', '好伙伴', '打保龄球', '好伙伴']
# ['狗熊钻圈', '好伙伴', '狗熊钻圈', '好伙伴', '狗熊钻圈']
# ['套玩具', '狗熊钻圈', '套玩具', '狗熊钻圈', '套玩具']
# ['拔鸡毛', '套玩具', '拔鸡毛', '套玩具', '拔鸡毛']
# ['骆驼运粮', '拔鸡毛', '骆驼运粮', '拔鸡毛', '骆驼运粮']# print('-------------第4步,拆分2天一组 工52组, ----------------')
print('---------第4步:xls写入)------') import xlwt
workbook = xlwt.Workbook()# 新建xls工作簿
sheet = workbook.add_sheet("中6班")# 新建xls工作簿的工作表的名字是sheet # print('-------------第5步,写入EXCEL ----------------')
# dates=[]
# # for i in range(0,len(num)):
# for i in range(0,len(num)):        
#     print(i)            
#     n='大{}班'.format(num[i])         # 用遍历方法获得“大1班、大2班
#     dates.append(n) 
# print(dates)   
#                 # 添加到列表    # row=1
# for d in range(0, len(dates)):
#     sheet.write(row, 0, dates[d])         # 这里enumerate不能用,因为只有一列,所以就用
#     row += 1    # 第0列 写入“第2周、第3周……第21周
dates=[]
# for i in range(0,len(num)):
for i in range(1,num+1):        print(i)            n="第{}周".format(i)    # 用遍历方法获得“第1周、第2周、第21周”字样,dates.append(n) 
print(dates)   # 添加到列表    
# print(dates)        
# print(date)row=1
for d in range(0, len(dates)):sheet.write(row, 0, dates[d])         # 这里enumerate不能用,因为只有一列,所以就用row += 1    # 第0行 写入 星期一  '星期二','星期三','星期四','星期五  #
weeks = ['周次','周一','周二','周三','周四','周五']
week = len(weeks) col=0
for d in range(0, len(weeks)):sheet.write(0,col,weeks[d])         # 因为只有一行,所以就用有两种写法(enumerate和这种)col+= 1  # 第B2开始写入 活动室内容
arrlan = len(list_all_all[0:num])# 只要列表数量中的20周
row = 1     # 第2行
for i in range(arrlan):         #for col,item in enumerate(list_all_all[i],1):            # L2[i]=表格内的内容=item,索引数字=colsheet.write(row,col,item)  # row,col,item 行=1、列=索引数字、内容=表格内容 写入第一行第一列row += 1   print('---------第5步:xls保存N份工作簿(每份一页)------')             
try:workbook.save(r"D:\test\02办公类\11集体游戏\分散运动一个班级(1周5天样式).xls")    # 新建保存 只能xlsprint('计划生成成功')
except e:print('失败...')print(e)

效果展示

5天样式1

5天样式2

感悟:

1、每周都要做的周计划时,各种琐碎零散信息需要花时间,而在黏贴过程中,大量的格式修正,让人烦躁,更容易出现内容的错误。

2、有了编程,可以把零散信息归纳整合,直接统一批量20周周计划的所有板块信息(EXCEL制作导入),其规范化的格式不容易出错、其反复调试生成的功能更是大幅工作提高效率。

3、Python批量功能,可以让我从琐碎繁杂的任务中解脱出来,去做更有价值、更创新的工作。

相关内容

热门资讯

jsp学生成绩分析及报表打印系... 一、源码特点      JSP学生成绩分析及报表打印系统是一套完善的java web信息管理系统&#...
节约用水主题班会活动方案 节约用水主题班会活动方案(通用6篇)  为了确保活动能无误进行,通常需要提前准备好一份活动方案,一份...
冬游活动方案 冬游活动方案  活动方案的建议  一、活动方案名称  尽可能具体的写出方案名称,如“2012年6月2...
[IDEA_SpringBoo... 关于yml以及yaml配置文件无法被识别的问题 原因可能是 未被加载到spring中/或者是并没有被...
质量月活动方案 质量月活动方案  活动方案的建议  一、活动方案名称  尽可能具体的写出方案名称,如“2012年6月...
Node.js安装与配置 ✅作者简介:CSDN一位小博主,正在学习前端,欢迎大家一起...
文法和语言的基本知识 一、什么形式化的方法用一套带有严格规定的符号体系来描述问题的方法二、什么是非形式化的方法对程序设计语...
电动车售后服务方案 电动车售后服务方案  一、方案的中文含义  方案是计划中内容最为复杂的一种。由于一些具有某种职能的具...
小班教研活动方案 小班教研活动方案(精选13篇)  为了确保活动得以顺利进行,就不得不需要事先制定活动方案,活动方案其...
科技活动方案13篇 科技活动方案13篇  一、活动方案的格式  1、活动标题  2、活动时间、地点  3、活动的目的及意...
营造书香校园活动方案 关于营造书香校园活动方案(精选15篇)  为有力保证活动开展的质量水平,常常需要预先制定活动方案,活...
家园共育的活动方案 家园共育的活动方案(精选8篇)  为确保活动顺利开展,常常需要提前制定一份优秀的活动方案,活动方案是...
趣味数学活动方案 趣味数学活动方案(精选11篇)  为了确保活动有效开展,常常要根据具体情况预先制定活动方案,活动方案...
幼儿园学生社会实践活动方案 幼儿园学生社会实践活动方案是怎样的,以下是unjs小编精心整理的相关内容,希望对大家有所帮助!幼儿园...
班级活动方案 班级活动方案3篇  为保证事情或工作高起点、高质量、高水平开展,常常需要预先制定方案,方案属于计划类...
学习Java——java种各种... 目录 transient  instanceof const   final final变量 fin...
带头双向循环链表 在前面我们学习了单链表,发现单链表还是有一些不够方便,比如我们要尾插&#...
幼儿园开学第一天活动方案范文   2017幼儿园开学第一天活动方案需要怎么备课呢?我们不妨一起来参考下范文吧!以下是小编为您搜集整...
幼儿园招生活动方案 幼儿园招生活动方案(通用15篇)  为了保障事情或工作顺利、圆满进行,预先制定方案是必不可少的,方案...
Servlet的详细使用 文章目录Servlet体系结构Servlet urlPattern配置Request和Respons...