『码上行动-编程擂台』学员作品展(附源码)

上个月开启的编程擂台活动(参见 码上行动的同学,你有一个机会等待签收),最终参赛作品出炉啦!

这次活动的参与者都是编程教室的学员,学习 python 的时间有短有长,学习方向也不尽相同。因此最终提交的项目在类型和难度上会有不小的区别。但总的来说,最终的完成度都挺不错。

我们组织此活动的目的并不是像考试一样比出一个高下,而是希望大家在学习理论之后,将编程应用到实践中,在开发的过程中进一步提高能力。所以,只要参与并完成了作品的,都是成功者。

前两天,我们内部对提交的作品做了一次评审,主要是从技术难度和实现完成度的角度给出了一组评分。

今天在展示作品的同时,希望各位看官也参与评判,选出你最喜欢或认可的项目。你的选择将决定我们活动奖品的归属。(投票需在公众号文章内进行)

每个作品都做了介绍和演示图,另外还附带了源码地址。

1、京东笔记本信息爬取和分析

作者:dundundun

学习时间:6个月

项目地址:gitee.com/moxi255/pacho

项目介绍:爬取了京东笔记本电脑信息,并进行分析。项目采用了scrapy框架进行爬取,采用 jupyter notebook 进行显示。

watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNTY=,g_se,x_0,y_0,t_100

学习感受:这次虽然时间很紧,但是下功夫还是完成了,时间总是挤出来的。感谢开展这个活动。

2、微信聊天机器人

作者:觉解

学习时间:陆陆续续学的,大致有一年多

项目地址:gitee.com/JueJie/Wechat

项目介绍:通过itchat对接微信,取得微信所需数据,再通过requests库调用腾讯AI接口,实现对特定微信朋友的智能闲聊功能。

watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNTY=,g_se,x_0,y_0,t_100

学习感受:

  1. 通过这次项目,完全实践了调用第三方接口的代码过程。
  2. 基本掌握了装饰器在实际编程中的应用。
  3. 任何原理、方法、计算过程、复杂的语法,都需要在实践中去消化,去演练,去调试,才能说基本掌握。

3、“几时了”小程序

作者:TED

学习时间:Python 是一年多前自学了两个多月,今年初又重新开始学到现在;前端是之前看网上教程过了一遍 html js 和 css的基础有个概念;小程序是这次编程擂台开始边学边做的

项目地址:github.com/pengfexue2/w

项目介绍:“几时了”取自《长安十二时辰》对时辰的询问,小程序围绕时间流逝、实时时辰、历史今日以及土味情话等元素进行展示和提供一键复制。涉及的技术为小程序前端开发,时间有限只调用了百度百科 API 查询历史今日信息,后续会对展现内容以及后台服务器进行跟进添加和优化。

watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfMjE=,g_se,x_0,y_0,t_100

学习感受:拖延真的很要命,如果没有助教齐大圣归来的询问进度,这个小程序怕是GG了。所以,感谢 Crossin 老大和助教齐大圣归来,deadline 是第一生产力。庆幸的是,有了引子开始做相关的开发时,项目的完成度就成了很自然的驱动力,这个过程还是蛮高效和有趣的。以后做什么感兴趣的事情或者自学,一定要狠下心开个头投入进去,以此来对抗拖延。

与自学 Python 时感受不同,这次跟着书学习微信小程序的开发,体会到的是跟着成熟项目走的省时省力。这次有了一次大概的小程序开发经历,就会觉得要多开发些小程序来积累经验,多去探索成熟的 Python 项目来进行实战等。

我之前有些前端基础,这次跟着书上的指引和助教的答疑解惑,基本也没隔夜的问题,还算顺利。虽然小程序只涉及前端难度不算大,但收获很多,非常充实和有成就感。

4、文件批量重命名

作者:GS

学习时间:2018年四月份左右开始学码上行动入门课程的,后来又落下了……

项目地址:github.com/leledada/bat

项目介绍:一个可以批量重命名文件的小工具。输入指定的需要重命名的文件路径,指定的输出路径,制定简单的替换规则,即可对文件进行重命名操作。重命名完成后,自动生成日志文件保存重命名记录。(详细功能及参数见代码注释)

watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNTY=,g_se,x_0,y_0,t_100

学习感受:这个工具是因为在工作中,处理批量文件入库的时候,因为程序有个简单的去重机制,文件跑过了,记录了文件名,所以需要将文件重命名后才能重新触发入库。

于是想到用python来批量重命名,也不需要用太多第三方的库,基本上os标准库就满足了。

由于工作较忙,时间关系,没有把界面化操作给做出来,有点小遗憾。

感谢crossin老师和大圣老师给予的耐心帮助和指导意见!

5、查询小助手

作者:Darwin

学习时间:2年前学完的,学的断断续续

项目地址:github.com/fengxiaoy/tk

项目介绍:本软件旨在帮助用户查询IP地址和号码归属地,以及日常办公中图片过大需要压缩的烦恼,代码很简单。

watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNTY=,g_se,x_0,y_0,t_100

学习感受:首先感谢crossin和齐天大圣归来等老师等帮助,我也是基于在crossin编程教室学习了以后,不论是爬虫、gui、web等都有了长足等进步,个人工作比较忙,再加上懒惰总是学到哪里算哪里。这次编程练习让我温故了之前自己编写等gui,顺便整合到了一起,过程也遇到了一些困难,在老师的帮助和自己的努力下也顺利完成了,比较粗糙,后期我会添加端口扫描、热点爬虫等功能,现在GUI似乎不流行了,但是我把GUI设计出来,有不少的成就感,加油!

6、物联网:传感器监控

作者:小逸

学习时间:学习断断续续的,就写写爬虫,算是简单入门吧。大概有一年以上。

项目地址:github.com/QI-Xiao/code

项目介绍:一个关于水质物联网的程序,通过物联云模块,利用python的Modbus库,对数据进行采集解析,存到数据库。代码运行在云端,数据采集完在发回本地显示屏,多线程实时显示水质数据,PH,溶氧,温度。云端利用PyQt5做的监视画面,同时利用Django搭了个简易版的网页,方便随时登录查看。

watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

学习感受:一直从事工控行业的PLC编程,偶然机会加入了Crossin编程教室,接触了python,开始写爬虫,慢慢发现python能做的事情很多,恰好有朋友要做物联网这方面内容,python就顺其自然派上用场了,这期间,设计箱体,画原理图,接线,写代码,调试,不亦乐乎!助教齐天大圣给与了不少帮助,尤其在Django方面,没接触过,感谢细心指导!最后感谢Crossin编程教室!

7、自制 web 框架

作者:邹邹邹邹

学习时间:大概学了7-8个月python

项目地址:github.com/QI-Xiao/code

项目介绍:一个基于 werkzeug 和 jinja2 的 web 框架,简单易用、架构清晰、模块化。包括了路由系统、视图系统、模板渲染、Restful 支持和中间件系统。

watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNTY=,g_se,x_0,y_0,t_100

学习感受:我一直认为,深入底层原理才是技术人成长的唯一路径,然而我错了。很多时候,技术都应该为现实世界服务。一段代码首先应该可以解决某一个(甚至某一类)问题,进而才考量这段代码写的有多好。

我之所以写这段“框架”的代码,原因有二:

1、希望站在更高的层次看待业务逻辑代码,写骨架代码可以让我看清楚业务流

2、为了面试

自认为这段代码写得并不好,工业化级别很低。但这些都是我们会经历的阶段不是么,即使是超级技术大牛,也总是源自一个被人嘲笑的菜鸟。

所以,代码总是要不停的写,就像画画要不停的练习,文章要不停的修改一样,大神王垠说的很对:要不停的打磨自己的代码,才能让代码一眼看上去就明显没有错误一样,我在努力着。

8、分析杭州的租房数据

作者:多多

学习时间:没啥基础,学了半年,不过也是断断续续的

项目地址:github.com/duoduo695055

项目介绍:

  1. 爬取安居客里杭州西湖区的房屋信息,包括房屋总价,建筑面积,建造年份,房屋单价等
  2. 对爬取的数据进行处理,提取出西湖区房价最高和最低的十个小区,画成柱状图
  3. 对爬取的数据,提取出房屋面积与建筑年份的关系

watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfMzE=,g_se,x_0,y_0,t_100

学习感受:参与编程擂台是我学习编程以来做的最有意义的一件事。一开始感觉自己完全做不出来,一直拖到6月底才开始做,但后来在助教老师的帮助下竟然慢慢做出来了,还是有点点成就感的。每天写代码的过程中自己也感觉渐渐开窍了一点。在这个过程中遇到了很多问题,好好地巩固了python的基础知识。下一步希望能够做一些机器学习方面的内容,预测一下房价。再次感谢助教老师手把手地教我,学到了很多很多。

9、英语单词复习

作者:猪猪

学习时间:学过汇编和C,但是基本忘光了。工作一段时间后通过crossin老师的公众号重新捡起编程。学python大概一个月,磨磨蹭蹭的把老师的基础教程部分搞完了。然后基本就是自己偶尔用一用,不会的就去网上查群里问。

项目地址:github.com/ZhuzhuNo3/Le

项目介绍:用来背单词。功能包括:新增单词,按录入日期分类;复习,按照艾宾浩斯记忆曲线显示复习内容;生成一周学习图表(默认关闭);删除;查询已录入的单词或词义。

缺点:1.仅支持格式为 A+空格+空格+B;2.所有单词需要手动录入;3.单机,无联网查询功能

watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNTY=,g_se,x_0,y_0,t_100

watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNTU=,g_se,x_0,y_0,t_100

学习感受:python真好玩儿

18年的时候,在Crossin老师的编程教室磨磨蹭蹭地用一个月时间学完了python的基础部分,之后就去玩别的东西啦。不过还是经常用python做一些有趣的事情,比如画爱心啦、整理文件啦、背单词啦等等。这次活动所展现的代码就是我常用的背单词程序的升级版本。通过老师的修改意见和自己在使用过程中不断地捉虫,目前这个程序对于想要背单词的同学应该还有些用处的吧 :P

--------

【奖品说明】

最佳人气奖(两名):项目展示阶段得票数最多的前两位分别奖励现金100元、50元;

最快进步奖(两名):编程教室将根据最后的代码质量评选出两名进步较快的学员,分别奖励现金100元、50元;

参与奖:所有提交最终作品的同学,都将得到编程教室知识星球一年会员和100会员积分

欢迎去公众号里为喜爱/认可的项目投票。当然,更欢迎你加入我们的队伍,在不久后的某天,写出更多更好的代码。

【附一段评审花絮】

更多干货内容,欢迎搜索并关注:Crossin的编程教室

一起学,走得更远!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 擂台小车比赛是一项有趣而具有挑战性的竞赛,为了使小车能够保持在擂台内运行,我们可以编写一段程序。 首先,我们需要定义擂台的边界范围。通过使用传感器或者借助手动测量,我们可以确定擂台的边界位置,并将其定义为程序中的变量。然后,我们需要编写一个循环,该循环会不断检测小车的位置,以确保其不会越过擂台的边界。 在循环中,我们可以使用条件判断语句来检测小车的位置。如果小车的位置超出了擂台的边界范围,我们可以通过控制小车的马达使其回到擂台内部。可以通过调整小车的速度和转向来实现控制。当小车离开擂台时,我们可以发送警报或者显示提示信息,以提醒参赛者。 除了检测位置并控制小车回到擂台内,我们还可以使用一些加功能来增强程序的效果。例如,我们可以在小车靠近擂台边缘时,通过调整马达的转向使其避免靠近边缘,以防止意外冲出擂台。 总结来说,通过定义擂台范围、检测小车位置并采取相应的控制措施,我们可以编写一个程序来确保小车始终保持在擂台内部。这样可以保证比赛的公平性,并提供更好的游戏体验。 ### 回答2: 实现控制小车不出擂台的程序可以采用如下步骤: 1. 初始化程序:在Arduino擂台小车比赛前,需要将小车放置在擂台的合适位置并启动Arduino控制板。 2. 设置边界条件:确定小车所能移动的边界区域。例如,可以使用超声波模块测量距离来确定擂台的边界,并将其保存在程序中。 3. 编写移动控制代码:利用Arduino的编程语言来编写小车的移动控制代码。在这个程序中,我们需要检测小车的位置,并在小车接近边界时停止运动。 4. 定义小车位置检测函数:编写一个函数来检测小车的位置。可以使用超声波模块等传感器来测量小车与边界的距离。 5. 编写停止运动函数:根据小车位置检测函数的输出,编写一个函数来停止小车的运动。当小车接近边界时,函数将停止小车的轮子转动。 6. 将控制代码与停止运动函数连接:在主程序中,将小车的控制代码与停止运动函数连接起来。当控制代码检测到小车接近边界时,它将调用停止运动函数来停止小车运动。 7. 测试代码:将小车放在擂台上,运行程序进行测试。确保小车能够在接近边界时停止运动。 通过以上步骤,我们就可以编写一个控制小车不出擂台的程序。该程序将根据小车的位置与擂台边界的距离,实时控制小车的移动,并在接近边界时停止小车运动,确保小车始终保持在擂台内部。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值