跟着crossin学,能写出什么代码?来看看他们的答卷
上个月开启的编程擂台活动(参见 码上行动的同学,你有一个机会等待签收),最终参赛作品出炉啦!
这次活动的参与者都是编程教室的学员,学习 python 的时间有短有长,学习方向也不尽相同。因此最终提交的项目在类型和难度上会有不小的区别。但总的来说,最终的完成度都挺不错。
我们组织此活动的目的并不是像考试一样比出一个高下,而是希望大家在学习理论之后,将编程应用到实践中,在开发的过程中进一步提高能力。所以,只要参与并完成了作品的,都是成功者。
前两天,我们内部对提交的作品做了一次评审,主要是从技术难度和实现完成度的角度给出了一组评分。
今天在展示作品的同时,希望各位看官也参与评判,选出你最喜欢或认可的项目。你的选择将决定我们活动奖品的归属。
每个作品都做了介绍和演示图,另外还附带了源码地址。
1、京东笔记本信息爬取和分析
作者:dundundun
学习时间:6个月
项目地址:
https://gitee.com/moxi255/pachongfenxi.git
项目介绍:
爬取了京东笔记本电脑信息,并进行分析。项目采用了scrapy框架进行爬取,采用 jupyter notebook 进行显示。
学习感受:
这次虽然时间很紧,但是下功夫还是完成了,时间总是挤出来的。感谢开展这个活动。
2、微信聊天机器人
作者:觉解
学习时间:陆陆续续学的,大致有一年多
项目地址:
https://gitee.com/JueJie/Wechat_Robot.git
项目介绍:
通过itchat对接微信,取得微信所需数据,再通过requests库调用腾讯AI接口,实现对特定微信朋友的智能闲聊功能。
学习感受:
1.通过这次项目,完全实践了调用第三方接口的代码过程。
2.基本掌握了装饰器在实际编程中的应用。
3.任何原理、方法、计算过程、复杂的语法,都需要在实践中去消化,去演练,去调试,才能说基本掌握。
3、“几时了”小程序
作者:TED
学习时间:Python 是一年多前自学了两个多月,今年初又重新开始学到现在;前端是之前看网上教程过了一遍 html js 和 css的基础有个概念;小程序是这次编程擂台开始边学边做的
项目地址:
https://github.com/pengfexue2/wxapp.git
项目介绍:
“几时了”取自《长安十二时辰》对时辰的询问,小程序围绕时间流逝、实时时辰、历史今日以及土味情话等元素进行展示和提供一键复制。涉及的技术为小程序前端开发,时间有限只调用了百度百科 API 查询历史今日信息,后续会对展现内容以及后台服务器进行跟进添加和优化。
学习感受:
拖延真的很要命,如果没有助教齐大圣归来的询问进度,这个小程序怕是GG了。所以,感谢 Crossin 老大和助教齐大圣归来,deadline 是第一生产力。庆幸的是,有了引子开始做相关的开发时,项目的完成度就成了很自然的驱动力,这个过程还是蛮高效和有趣的。以后做什么感兴趣的事情或者自学,一定要狠下心开个头投入进去,以此来对抗拖延。
与自学 Python 时感受不同,这次跟着书学习微信小程序的开发,体会到的是跟着成熟项目走的省时省力。这次有了一次大概的小程序开发经历,就会觉得要多开发些小程序来积累经验,多去探索成熟的 Python 项目来进行实战等。
我之前有些前端基础,这次跟着书上的指引和助教的答疑解惑,基本也没隔夜的问题,还算顺利。虽然小程序只涉及前端难度不算大,但收获很多,非常充实和有成就感。
4、文件批量重命名
作者:GS
学习时间:2018年四月份左右开始学码上行动入门课程的,后来又落下了……
项目地址:
https://github.com/leledada/batchtools/blob/master/auto_rename_collection.py
项目介绍:
一个可以批量重命名文件的小工具。输入指定的需要重命名的文件路径,指定的输出路径,制定简单的替换规则,即可对文件进行重命名操作。重命名完成后,自动生成日志文件保存重命名记录。(详细功能及参数见代码注释)
学习感受:
这个工具是因为在工作中,处理批量文件入库的时候,因为程序有个简单的去重机制,文件跑过了,记录了文件名,所以需要将文件重命名后才能重新触发入库。
于是想到用python来批量重命名,也不需要用太多第三方的库,基本上os标准库就满足了。
由于工作较忙,时间关系,没有把界面化操作给做出来,有点小遗憾。
感谢crossin老师和大圣老师给予的耐心帮助和指导意见!
5、查询小助手
作者:Darwin
学习时间:2年前学完的,学的断断续续
项目地址:
https://github.com/fengxiaoy/tkinter.git
项目介绍:
本软件旨在帮助用户查询IP地址和号码归属地,以及日常办公中图片过大需要压缩的烦恼,代码很简单。
学习感受:
首先感谢crossin和齐天大圣归来等老师等帮助,我也是基于在crossin编程教室学习了以后,不论是爬虫、gui、web等都有了长足等进步,个人工作比较忙,再加上懒惰总是学到哪里算哪里。这次编程练习让我温故了之前自己编写等gui,顺便整合到了一起,过程也遇到了一些困难,在老师的帮助和自己的努力下也顺利完成了,比较粗糙,后期我会添加端口扫描、热点爬虫等功能,现在GUI似乎不流行了,但是我把GUI设计出来,有不少的成就感,加油!
6、物联网:传感器监控
作者:小逸
学习时间:学习断断续续的,就写写爬虫,算是简单入门吧。大概有一年以上。
项目地址:
https://github.com/QI-Xiao/code_by_xiaoyi
项目介绍:
一个关于水质物联网的程序,通过物联云模块,利用python的Modbus库,对数据进行采集解析,存到数据库。代码运行在云端,数据采集完在发回本地显示屏,多线程实时显示水质数据,PH,溶氧,温度。云端利用PyQt5做的监视画面,同时利用Django搭了个简易版的网页,方便随时登录查看。
学习感受:
一直从事工控行业的PLC编程,偶然机会加入了Crossin编程教室,接触了python,开始写爬虫,慢慢发现python能做的事情很多,恰好有朋友要做物联网这方面内容,python就顺其自然派上用场了,这期间,设计箱体,画原理图,接线,写代码,调试,不亦乐乎!助教齐天大圣给与了不少帮助,尤其在Django方面,没接触过,感谢细心指导!最后感谢Crossin编程教室!
7、自制 web 框架
作者:邹邹邹邹
学习时间:大概学了7-8个月python
项目地址:
https://github.com/QI-Xiao/code_by_zhou/
项目介绍:
一个基于 werkzeug 和 jinja2 的 web 框架,简单易用、架构清晰、模块化。包括了路由系统、视图系统、模板渲染、Restful 支持和中间件系统。
学习感受:
我一直认为,深入底层原理才是技术人成长的唯一路径,然而我错了。很多时候,技术都应该为现实世界服务。一段代码首先应该可以解决某一个(甚至某一类)问题,进而才考量这段代码写的有多好。
我之所以写这段“框架”的代码,原因有二:
1、希望站在更高的层次看待业务逻辑代码,写骨架代码可以让我看清楚业务流
2、为了面试
自认为这段代码写得并不好,工业化级别很低。但这些都是我们会经历的阶段不是么,即使是超级技术大牛,也总是源自一个被人嘲笑的菜鸟。
所以,代码总是要不停的写,就像画画要不停的练习,文章要不停的修改一样,大神王垠说的很对:要不停的打磨自己的代码,才能让代码一眼看上去就明显没有错误一样,我在努力着。
8、分析杭州的租房数据
作者:多多
学习时间:没啥基础,学了半年,不过也是断断续续的
项目地址:
https://github.com/duoduo695055/-
项目介绍:
1.爬取安居客里杭州西湖区的房屋信息,包括房屋总价,建筑面积,建造年份,房屋单价等
2.对爬取的数据进行处理,提取出西湖区房价最高和最低的十个小区,画成柱状图
3.对爬取的数据,提取出房屋面积与建筑年份的关系
学习感受:
参与编程擂台是我学习编程以来做的最有意义的一件事。一开始感觉自己完全做不出来,一直拖到6月底才开始做,但后来在助教老师的帮助下竟然慢慢做出来了,还是有点点成就感的。每天写代码的过程中自己也感觉渐渐开窍了一点。在这个过程中遇到了很多问题,好好地巩固了python的基础知识。下一步希望能够做一些机器学习方面的内容,预测一下房价。再次感谢助教老师手把手地教我,学到了很多很多。
9、英语单词复习
作者:猪猪
学习时间:学过汇编和C,但是基本忘光了。工作一段时间后通过crossin老师的公众号重新捡起编程。学python大概一个月,磨磨蹭蹭的把老师的基础教程部分搞完了。然后基本就是自己偶尔用一用,不会的就去网上查群里问。
项目地址:
https://github.com/ZhuzhuNo3/LearnEnglish
项目介绍:
用来背单词。功能包括:新增单词,按录入日期分类;复习,按照艾宾浩斯记忆曲线显示复习内容;生成一周学习图表(默认关闭);删除;查询已录入的单词或词义。
缺点:1.仅支持格式为 A+空格+空格+B;2.所有单词需要手动录入;3.单机,无联网查询功能
学习感受:
python真好玩儿🤪
18年的时候,在Crossin老师的编程教室磨磨蹭蹭地用一个月时间学完了python的基础部分,之后就去玩别的东西啦。不过还是经常用python做一些有趣的事情,比如画爱心啦、整理文件啦、背单词啦等等。这次活动所展现的代码就是我常用的背单词程序的升级版本。通过老师的修改意见和自己在使用过程中不断地捉虫,目前这个程序对于想要背单词的同学应该还有些用处的吧 。