Python学习路径及练手项目合集 这个系列的技术路径里, 有入门知识模块, 有基础模块, 有Web框架模块, 有基础项目模块, 有网络编程模块, 有数据与计算模块, 还有综合项目模块这七个部分。路径当中的教程, 会引领你逐步深入进去, 让你学会怎样通过其去实现一个博客, 或者一个桌面词典, 又或者一个微信机器人, 再或者一个网络安全软件等等。完成了本路径的基础以及项目练习之后, 你将会拥有独立的开发能力。完整的学习路径研发工程师各类教程全都配备了在线练习环境, 于电脑端进行访问时能够直接在线实践, 而在手机端仅仅能够查看教程。通过实践来学习是最为有效的学习方式。阶段1入门知识那些没有任何编程基础的人, 能够先借助下面的几个教程, 去了解编程以及环境方面的入门知识。要是已经拥有编程基础, 那就直接从阶段2开始着手。1. 编程新手指南2. Linux 基础入门3. Git 实战教程阶段2基础在看完入门知识之后, 便能够开启本阶段的征程, 对于和3的教程, 能够从中挑选一个进行深入学习。1. 简明教程2. 快速教程基于 2.7阶段3Web框架1. Web框架2. Flask Web框架阶段4基础项目1. 图片转字符画本实验依靠50行代码达成图片转字符画小工具, 经由本实验将会学习到Linux命令行操作, 学习到基础, 学习到库的使用, 学习到库的使用。2. 200行代码实现2048把2048小游戏编写完成, 本实验仅仅使用了200行代码。通过做这个实验能学习基本知识, 能了解状态机的概念, 还能知晓编写游戏的步骤。3. 破解验证码本实验借由一个简易的例子达成破解验证码, 于此当中, 我们能够学到基本知识, 学到 PIL 模块的运用方式, 学到破解验证码的原理。4. 文本解析器讲这个课程, 有个小程序, 它利用特定工具解析纯文本然后生成一个HTML页面。在这过程中要学习基本语法, 还有HTML标记语言, 以及怎样借助特定工具把纯文本划分成一个个文本块, 并且对其进行解析。5. 色情图片识别在本次实验之进程当中, 将会借助特定方式当作手段, 以此来达成对于图片究竟是不是属于色情图片的辨别识别之举, 而此过程里, 会用上被称作 PIL这般的图像处理库, 并且还会开展编写算法这一行为动作, 通过该算法去进行划分图像当中的皮肤相关区域。这里面, 是涉及包含肤色像素检测以及皮肤区域划分算法, 还有相关使用这三方面的基础知识的。6. 实现解释器会从实现一个玩具解释器着手, 来学习解释器的基本知识, 本课程如此进行。之后, 借助考察字节码, 进一步去学习理解解释器的内部机制。最终, 以一个现有的解释器来作参考, 据此实现一个行数在500以内的解释器。7. 生成汉字图片字库本次实验运用, 以及 PIL 模块来进行字体渲染从而生成字库。在该实验期间会开展学习与实践, 关于基本知识, 还有 PIL 模块的运用。8. 图片隐写术达成把关键信息隐匿于图片的效果, 这样做的主要目的在于防止预期接收者之外的其他人知道传递的内容。这和电视剧里运用特殊墨水来传递信息是一样的, 从表面一看它就是一张没写任何东西的白纸, 实际上却暗藏着重要信息。9. 开发打飞机游戏使用快速开发一款PC端玩耍的微信打飞机游戏基于实现。10. 实现简易 ShellShell是个由C语言编写出的程序, 此应用程序给出了一个界面, 用户借由这个界面去访问操作系统内核的服务, 它是用户运用Linux内核的桥梁, 本次课程会通过来达成一个简易的Shell。11. 实现3D建模工具本课程会以实现一般 CAD 软件都有的基础功能为依据, 这个功能是, 能够渲染显示 3D 空间的画面, 并且, 能够操作 3D 空间里的物体。12. 使用 3 编写系列实用脚本要用3来编写一系列实用脚本, 在实验过程中, 要能熟悉3的使用, 还要学习使用各种功能强大的模块。13. 实现键值数据库本课程会借助理解, 那种操作近似于 Redis 的, 存储理念源自于某键值数据库的源代码, 借此来学习怎样进行数据库的数据存储, 进而体会运用不可变数据结构的优点。14. 视频转字符动画本课程用以处理图片视频, 专门把视频转变成字符画序列, 之后于终端里头播放字符动画。除开特定的操作之外, 本课程还会去知晓光标定位转义编码的运用。阶段5网络编程1. 实现火车票查询工具本课程有这样一个用途, 那就是运用操作去抓取12306网站的信息, 进而提供出一个处于命令行模式下的火车票查询工具。凭借该项目的达成, 能够对基础编程以及网络编程做到熟悉, 同时对于一些库的使用, 像, , 等这类库的使用也能够熟悉。2. 实现基于协程的异步爬虫此课程会研讨若干种达成爬虫的办法, 自传统的线程池起直至运用协程, 每一节课去达成一个小型爬虫。此外于学习协程之际, 我们会从原理着手, 以协程库作为原型, 来达成一个简易的异步编程模型。阶段6数据与计算1. 科学计算(一)2. 科学计算(二)3. 数据分析一4. 数据分析二5. 基于共现提取《釜山行》人物关系针对《釜山行》剧本的文本, 运用编写代码来剖析文本里人物的共现关系, 达成对《釜山行》文本的人物关系提取, 然后借助Gephi软件针对提取的人物关系绘制人物关系图。6. 基于 Flask 与 MySQL 实现番剧推荐系统基于Flask框架以及MySQL所实现的简单番剧推荐系统构成了本课程, 于本课程里, 能够学到怎样运用相关方式去连接MySQL数据库, 具体是如何查询以及展示数据的, 还有设计推荐算法等方面的知识。7. 入门泰坦尼克号幸存者项目它是一个关于线上数据科学竞赛的网站。这门课程会运用科学计算工具针对所提供的泰坦尼克号上人员的数据展开分析建模。8. 神经网络实现手写字符识别系统该课程最终会依据BP神经网络达成一个手写字符识别系统, 系统在服务器启动之际会自动读入训练好的神经网络文件, 若文件不存在, 便读入数据集着手训练, 用户能够借由在html页面上手写数字发送给服务器从而获取识别结果。阶段7综合项目1. 高德API解决租房问题撰写脚本来抓取某租房网站的房源信息, 借助高德的 js API 在地图上把房源地点标注出来, 划分出距离工作地点 1 小时内能够到达的范围, 附上公交路径规划功能来查看不同路径的用时情况。2. 实现简单的Web服务器通过运用语言去达成一个Web网络服务器, 探究HTTP协议以及Web服务的基础原理, 与此同时学习怎样去达成Web服务的请求、响应、错误处理以及CGI协议, 最终能运用面向对象的思路来实施重构。3. 基于Flask/实现TODO List本实验会把学习 , 当作数据库后端 , 以.js作为前端的技术栈 , 并达成一个清单应用。 从这里面我们能够学习Flask Web应用框架 , 以及 文档型数据库和.js web开发框架。4. Flask开发轻博客通过运用Flask Web框架, 来开发一个有着基本功能的轻博客平台, 于这个过程当中进行Web开发的学习。以上教程、项目会一直保持更新。