2020春季学期作业提交统计处理
01下载学生提交作业
在网络学堂作业批改页面将提交的信息存储成TEXT文件,每一次存储成一个文件,共15次:
▲ 将提交学生的信息进行选择、拷贝、粘贴
▲ 每次提交作业存储的文件
下面是text文本文件的基本格式。
分组 学号 姓名 院系 班级 上交时间 状态 成绩 批阅老师 操作
全体 2016012194 王伟帆 新雅书院 CDIE7 2020-02-24 23:40 未批改 批阅
全体 2017010684 刘一纯 新雅书院 CDIE7 2020-02-22 19:50 未批改 批阅
全体 2017011907 邓文静 新雅书院 CDIE7 2020-02-24 12:26 未批改 批阅
全体 2017013634 崔琢宜 新雅书院 CDIE7 2020-02-24 22:06 未批改 批阅
全体 2017013657 李卓勋 新雅书院 CDIE7 2020-02-20 21:03 未批改 批阅
全体 2017013661 刘雨佳 新雅书院 CDIE7 2020-02-24 17:06 未批改 批阅
全体 2017013670 张皓烨 新雅书院 CDIE7 2020-02-21 17:09 未批改 批阅
全体 2017013672 孙兆晗 新雅书院 CDIE7 2020-02-24 17:22 未批改 批阅
全体 2017013677 郑智 新雅书院 CDIE7 2020-02-23 21:12 未批改 批阅
全体 2017013687 吴炳炎 新雅书院 CDIE7 2020-02-21 20:42 未批改 批阅
全体 2017013693 黄连聚 新雅书院 CDIE7 2020-02-24 20:44 未批改 批阅
02生成学生作业统计信息
1.统计作业的功能
在DOP文件中声明相应的作业所处的目录:
homeworkdir:
D:\Teaching\SignalsSystems\SS2020S\HOMEWORKA\XINYA
autodir:
D:\Teaching\SignalsSystems\SS2020S\HOMEWORKA\AUTO
通过调用hmwasub中的addhwtextfile相关命令,将所有提交的作业情况进行汇总。具体的过程参见下面的子程序。
处理过程中,在MESSAGE窗口显示如下的信息:
Total Students:11
2016012194 王伟帆 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017010684 刘一纯 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017011907 邓文静 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017013634 崔琢宜 13 [2][8] [1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]
2017013657 李卓勋 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017013661 刘雨佳 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017013670 张皓烨 14 [13] [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]
2017013672 孙兆晗 12 [3][5][10] [1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]
2017013677 郑智 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017013687 吴炳炎 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017013693 黄连聚 11 [11][12][13][15] [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0]
2.形成公众号可查询文件
通过对MESSAGE窗口显示文本增加查询说明,可以形成在公众号可查询文件。使用相应的查询命令:
查询命令 ?数据文件名称
下面是相关的查询文本样例:
信号与系统2020春季作业统计学号:$1
姓名:$2
作业提交次数:$3
缺少作业:$4--------------------------------------
Total Students:174
2014011587 黄卓 13 [7][15] [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0]
2015011437 薛盛元 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2016011434 张翔峰 13 [12][13] [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1]
2016012223 潘咭翔 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017010462 左天宇 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017010527 刘泽源 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017010749 劳天成 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017010864 倪赞林 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017011595 陈梦醒 13 [2][13] [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]
2017011653 李炜 14 [7] [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]
2017011939 李晟永 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017012018 陈惠来 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
2017012359 张一帆 14 [9] [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]
2017012375 刘书昕 15 NULL [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
新雅学院信号与系统课程学号:$1
姓名:$2
试卷分数:$10
作业情况:$11
课程情况:$15
预估总分:$16备注:预估总分=试卷分数*0.7+作业*1.5/1.3+课程*0.15/1.2
-----------------------------------------------
2015011180 张晨宇 10.5 8 17 11 17 5 9 77.5 10 58 39 4 101 78.41
2016013297 于港 8 8 15 9 20 5 7 72 9 57 38 3 98 73.03
2016013298 沈习远 13 10 20 15 25 5 8 96 13 65 51 4 120 97.20
2016013305 邓佳怡 10.5 9 17 12 20 4 2 74.5 13 64 50 4 118 81.90
2016013308 徐一支 10.5 10 14 12 20 5 10 81.5 12 64 43 3 110 84.65
2016013312 于天宇 13 8 19 14 25 5 10 94 13 63 53 4 120 95.80
2016013320 王依晨 6.5 6 15 15 17 3 8 70.5 9 65 44 4 113 73.86
2016013327 项雨桐 11.5 9 17.5 15 20 5 10 88 13 61 46 1 108 90.10
2016013334 王振飞 14 10 14 15 25 5 10 93 13 65 58 4 127 95.98
2016013335 张迟 10.5 7 15 13 24 5 8 82.5 13 66 45 4 115 87.13
2016013342 朱宇轩 14 10 19 15 21 5 8 92 13 51 48 12 111 93.28
2016013346 於汀 11 7 17 12 21 5 9 82 13 65 53 4 122 87.65
2016013339 郑雅文 10.5 10 18 13 22 5 8 86.5 11 65 49 4 118 87.99
3.处理作业的相关子程序
#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# ALLSTUDENT.PY -- by Dr. ZhuoQing 2020-06-03
#
# Note:
# Get all the students name and ID from the text file.
#
#============================================================from headm import *
import hmwasub#------------------------------------------------------------
hmdir = tspstring2text('autodir')
hmfile = [os.path.join(hmdir, f) for f in os.listdir(hmdir) if f.find('.txt') >= 0]#printf(hmfile)for f in hmfile:hmwasub.addhwtextfile(f)tspmsgcopy()hmwasub.savealldata('autostatistic')printf("\a")#------------------------------------------------------------
# END OF FILE : ALLSTUDENT.PY
#============================================================
#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# HMWASUB.PY -- by Dr. ZhuoQing 2020-06-03
#
# Note:
#============================================================from headm import *#------------------------------------------------------------
idall = []
nameall = []
hwall = []#------------------------------------------------------------
def addidhw(id, name):global idall, nameall, hwallif idall.count(id) > 0:index = idall.index(id)hwall[index][-1] = 1else:idall.append(id)nameall.append(name)newhw = []if len(hwall) > 0:for i in range(len(hwall[0]) - 1):newhw.append(0)newhw.append(1)hwall.append(newhw)#------------------------------------------------------------
def addidhwall0():global hwallfor hw in hwall:hw.append(0)def nohomeworkstring(hwma):str = ''for id,h in enumerate(hwma):if h == 0:str = str + '[%d]'%(id+1)if len(str) == 0: str='NULL'return str#------------------------------------------------------------
def savealldata(filename):global idall, nameall, hwalltspsave(filename, id=idall, name=nameall, hw=hwall)printf('Total Students:%d'%len(idall))totalwork = len(hwall[0])for i, id in enumerate(idall):nostr = nohomeworkstring(hwall[i])printf('%s %s %d %s %s'%(id, nameall[i], sum(hwall[i]), nostr, str(hwall[i])))#------------------------------------------------------------
def addhwtextfile(filename):with open(filename, 'r', encoding='gbk' ) as f:addidhwall0()for l in (f.readlines()):l.rstrip('\n')ls = l.split()if ls[0] != '全体':continueaddidhw(ls[1], ls[2])#------------------------------------------------------------
# END OF FILE : HMWASUB.PY
#============================================================
2020春季学期作业提交统计处理相关推荐
- 信号与系统期末考试2020春季学期试题准备
00特殊情况说明 在2020年春季学期,由于受到Coronavirus-19的影响,考试采用网络考试的形式: 通过网络学堂分发试卷和收集答案: 考试通过腾讯会议进行监考过程: 考试时间6月13日下午2 ...
- 2020春季学期信号与系统课堂参与信息处理
■ 简介 这部分信息来自于学生通过公众号TSINGHUAZHUOQING参与信号与系统课程教学活动,部分内容可以参见博文" 上课玩手机 "中的介绍. 由于今年 Coronaviru ...
- 2020春季学期哈工大软件构造学习心得二
前言 上一章主要讲了软件构造的结果形态以及如何是一个"好"的软件 这一章主要学习软件开发遵循着一个什么样的过程 - 软件生命周期与配置管理 From 0 to 1,from 1 t ...
- 2020春季学期哈工大软件构造学习心得一
前言: 今年是特殊的一年,由于新冠病毒的爆发,导致我们无法正常开学,所以网上开课如期进行,其中软件构造是这学期我们要面临的巨大挑战. 准备工作: 上学期末得知本门课程需要学习Java语言进行编程,所以 ...
- 2020春季学期哈工大软件构造学习心得五
面向对象的编程 面向对象的标准 "准备更改"和"为重用而设计"的泛型(泛型):应该可以用表示任意类型的形式泛型参数编写类. 继承:应该可以将一个类定义为继承自另 ...
- 2020春季学期哈工大软件构造学习心得四
程序设计语言中的函数和方法 参数类型是否匹配,在静态类型检查阶段完成 返回值类型是否匹配,也在静态类型检查阶段完成 规约:交流编程 Spec给"供需双方"都确定了责任,在调用的时候 ...
- 2020春季学期哈工大软件构造学习心得三
Abstract Data Type (ADT) and ObjectOriented Programming (OOP) 前言 前两章回答了:什么是"高质量的软件". 如何从不同 ...
- 信号与系统 2022 春季学期第一次作业-作业题目准备
简 介: 关于作业的参考答案需要根据之前结果,再结合现在的修改进行补充. 关键词: 作业,信号与系统 #mermaid-svg-HSmAT7ir1Kl95O1z {font-family:" ...
- 大学计算机课作业新建文档,重庆大学2020年春季学期课程作业计算机组成原理.docx...
重庆大学2020年春季学期课程作业计算机组成原理.docx 2020年春季学期课程作业计算机组成原理第1次 计算机组成原理 题号一二合计 已做/题量19 / 2020 / 2039 / 40 得分/分 ...
最新文章
- 进阶必备:CNN经典论文代码复现 | 附下载链接
- mybatis转义反斜杠_mybatis like 的坑
- rose框架学习总结
- 【文章】论文写作知识积累
- [云炬创业基础笔记]第七张创业资源测试14
- 在Myeclipse中没有部署jeesite项目,但是每次运行其他项目时,还是会加载jeesite项目...
- const的用法以及与define使用的区别
- java怎么用doss窗口_GitHub - doss128/symphony: 一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)平台。...
- OSG 实现跟随节点的相机(转)
- 分布式系统概念与设计学习(01),本书概要与基础概念
- SQL注入语句(详细)
- QuickZIP V1.21 源码 【学习SharpZipLib的必看!】【以SharpZipLib为基础完成】【VB.Net】
- 硬盘sata供电不启动,必须用大4pin转sata的情况
- 隐私计算在普惠金融领域的应用研究
- python微信群发itchat
- 社区英雄榜:谁是真正的技术英雄?
- HTML5的基础认知 与 css的部分内容
- 科大讯飞语音SDK使用流程
- seo搜索引擎最佳化,10大网站排名关键因素
- 魔拉格头皮净养凝露,告别满头油腻,还原头发清新