当前位置:   article > 正文

头歌平台自建实践项目简易教程_头哥平台

头哥平台

本文章主要是介绍在头歌平台怎么自建简单的实践项目

头歌平台:https://www.educoder.net/
自建实践项目只能是教师身份注册的账户,平台里面有很多其他优秀的项目,也可以直接使用。
平台里面也有详细的说明文档,这里就不再详细说明了,下面以一个简单的html题目为例,创建一个可以自己评分的项目。

项目创建过程

使用bootstrap5对HTML代码进行颜色设置。

1. 创建实践项目

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. 填写项目基本信息

在这里插入图片描述

3.上传项目代码

图片中有2个主要代码code5.html是学生要补全的作业代码,code5-test.py是用来检测学生提交代码后是否正确的验证代码,下一步将介绍这两个文件的设置。(code5.html是作业文件,代码是不全的,需要学生完成)
代码中涉及的文件路径,请查看页面的提示,这里就不详细说!!在这里插入图片描述

4.新建实践关卡

填写任务,就是涉及的知识点和要完成题目的要求。
在这里插入图片描述

5.测评设置

这一步是最重要的一步,就要设置怎么判断学生代码对错和得分。
在这里插入图片描述
一般为了方便就选择测试集对比,就是code5-test.py输出的结果和预期结果对比(预期输出后面设置),详细可以查看帮助说明。

设置两个文件

这步就是选择刚才上传到代码仓库的两个文件了。
在这里插入图片描述

设置评测参数

判断答案的方式是与实际输出进行对比(最简单的方式)
在这里插入图片描述

设置预期输出的结果

这步的意思是,学生补全代码了要运行测评,测评就运行code5-test.py文件,文件运行的结果和这里的输入进行比较,如果一样就对,不一样就错误。
在这里插入图片描述

6.设置参考答案

根据自行需求设置即可
在这里插入图片描述

7.实验环境设置

这步非常重要,如果选择错误就无法运行code5-test.py文件
以下是我的设置,其实就是在模拟实战中选择评测后用什么环境运行python文件。
在这里插入图片描述
在这里插入图片描述

注意事项

1.我的这个项目用的了pyquery这个库文件,在选择实验环境的时候要选择有这个库文件的环境;
2.通过设置python文件的代码,实现更复杂的输出,这样降低学生作弊的概率。
3.code5.html文件代码:

<!DOCTYPE html>
<html >
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="/data/workspace/myshixun/css/bootstrap.min.css">
    <!-- <link rel="stylesheet" href="../css/bootstrap.min.css"> -->
    <style>
        div div{
            border:black solid 1px;
        }
    </style>
</head>
<body>
    <!-- ********* begin ********* -->
    <div class="container-fluid mt-3">
        <!--  使用上下文类将 <p> 元素的文本颜色设置为“橙色”: -->
        <p >Hello World!</p>

        <!--  使用上下文类将 <p> 元素的背景颜色设置为“浅灰色”: -->
        <p >Hello World!</p>
        
    </div>
    <!-- *********end********* -->

    <script src="/data/workspace/myshixun/js/bootstrap.bundle.min.js"></script>
</body>
</html>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

4.code5.html答案代码:

<!DOCTYPE html>
<html >
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="/data/workspace/myshixun/css/bootstrap.min.css">
    <!-- <link rel="stylesheet" href="../css/bootstrap.min.css"> -->
    <style>
        div div{
            border:black solid 1px;
        }
    </style>
</head>
<body>
    <!-- ********* begin ********* -->
    <div class="container-fluid mt-3">
        <!--  使用上下文类将 <p> 元素的文本颜色设置为“橙色”: -->
        <p class="text-warning">Hello World!</p>

        <!--  使用上下文类将 <p> 元素的背景颜色设置为“浅灰色”: -->
        <p class="bg-light">Hello World!</p>
        
    </div>
    <!-- *********end********* -->

    <script src="/data/workspace/myshixun/js/bootstrap.bundle.min.js"></script>
</body>
</html>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

5.code5-test.py评测代码

from pyquery import PyQuery as pq

def get_js():
    f = open("step5/code5.html", 'r', encoding='UTF-8')
    line = f.readline()
    jsString = ''
    while line:
        jsString = jsString + line
        line = f.readline()
    return jsString

def get_num(items):
    data=[]
    for i in items:
        data.append(i)
    return len(data)

fileContent = get_js()
doc= pq(fileContent)
correctOutput1 = doc(".text-warning")
correctOutput2 =  doc(".bg-light")

if(correctOutput1 and correctOutput2 ):
    print("TRUE",end='')
else:
    print("FALSE",end='')
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/580669
推荐阅读
相关标签
  

闽ICP备14008679号