机器学习之阿里云天池大赛--Docker入门(二)

在上一篇文章中,实现了阿里云天池大赛Docker入门得分,此次主要解决的问题是完成剩余的两个功能得到100分。

1、创建数据csv文件

在开发目录下创建tcdata/num_list.csv,并在文件中输入大于10个随机正整数,操作方法既可以用python生成也可以用Excel生成,为了方便本人使用的是Excel。
注意:在作者的测试过程中,此处随机数个数要大于10,否则系统不计分。

=RANDBETWEEN((1,100)

机器学习之阿里云天池大赛--Docker入门(二)
图1 Excel生成随机数

查看下创建完成后的文件

机器学习之阿里云天池大赛--Docker入门(二)
图2 完整的文件列表

2、完成赛题第二和第三条要求得到100分

在main.py中添加代码,实现数字求和运算以及排序取top10。

#main.py
import json
import csv
 
num = 0
numbers = []
with open('/tcdata/num_list.csv') as f:
    f_csv = csv.reader(f)
    for row in f_csv:
        #numbers.append(row[0])
        number = int(row[0])
        num += number
        numbers.append(number)
 
numbers.sort(reverse = True)
f.close()
#print(numbers)
data = json.dumps({'Q1': 'Hello world', 'Q2': num, 'Q3':numbers[:10]})
json_file = open('result.json', 'w')
json_file.write(data)
json_file.close()

打包镜像并上传

#登录阿里云Docker Registry
sudo docker login --username=zhix****@gmail.com registry.cn-shenzhen.aliyuncs.com

#打包镜像
sudo docker build -t registry.cn-shenzhen.aliyuncs.com/***/dockerlearn01:0.11 .

#执行任务
sudo docker run imageId sh run.sh

#上传镜像
sudo docker push registry.cn-shenzhen.aliyuncs.com/***/dockerlearn01:0.11

在结果提交界面提交结果等待执行结束,在“我的成绩”可以看到得分情况,经过测试,使用10个随机数字的时候任务三得0分,使用50个随机数字任务三得40分。
机器学习之阿里云天池大赛--Docker入门(二)
图3 得分结果

上一篇:运营分析利器——SLS窗口漏斗分析


下一篇:机器学习之阿里云天池大赛—Docker入门