原文链接: Python 学习路线(2022)
前几天整顿了一份 Go 学习路线(2022),广受好评。那么浑水摸鱼,不是,是趁热打铁,又整顿了一份 Python 学习路线。
内容仍然是从入门到进阶,既有教程,也有经典书籍举荐,还有实战开源我的项目。
Python 的倒退方向还是挺多的,比方服务端开发,爬虫,数据分析,机器学习等,本文举荐的内容全副是服务端开发,Web 开发方向。
次要分为以下几个局部:
- 文档教程
- 书籍举荐
- Web 开发
- 开源我的项目
- 实用工具
- 技术社区和博客
文档教程
Python 官网文档
网站地址: https://docs.python.org/zh-cn/3/
Python 的官网文档,反对简体中文语言,能够切换 Python 版本,依据不同版本看对应的内容,包含教程,规范库,装置应用等。有什么能比官网文档更好呢?
廖雪峰 Python 教程
网站地址: https://www.liaoxuefeng.com/w…
很多程序员对廖雪峰这个名字应该并不生疏,对他的集体网站应该也不生疏。这个 Python 教程对于编程老手十分敌对,内容根底,全面,而且还有残缺的示例。
其实,从浏览量也能看得出来,这个教程真的很多人读。
菜鸟教程 – Python 基础教程
网站地址: https://www.runoob.com/python…
这个网站就不须要多介绍了吧,很多编程语言的入门教程都能够在这里找到。平时写代码过程中,某个知识点忘了,也能够到这里查。
Python 在线手册
网站地址: https://docs.pythontab.com/
一个导航类学习网站,除了 Python,还有 Django,Flask 等等,能够抉择本人感兴趣的技术来学习。
The Hitchhiker’s Guide to Python
网站地址: https://docs.python-guide.org/
这是一份老手和进阶人员都能够读的教程,内容从装置,虚拟环境搭建开始讲起,而后介绍 Python 最佳实际和实战,比方如何构建我的项目,网络开发,Web 开发等。
当初曾经出实体书了,不过,我感觉看这份教程也足够了。毕竟,白漂就是爽。
learn-python
网站地址: https://github.com/trekhleb/l…
一份以代码和正文形式解说 Python 的收费教程。
每段 Python 程序都会按不同主题进行分类,而且每个根底语法和知识点都采纳能够运行的代码为例进行解说,再配上适当的正文和参考资料,让你疾速上手。
书籍举荐
授人以鱼不如授人以渔,首先举荐一个网站:
网站地址: https://pythonbooks.org/
这是一个专门举荐 Python 书籍的网站,会依照书籍的风行度来排名,并且按不同性能进行分组。比如说入门书籍,进阶书籍,或者 Web 开发类书籍,机器学习类书籍等。
网站内容是每个月更新一次,空闲工夫的话能够来逛一逛,而后依据本人的程度和学习方向来抉择书籍,还是挺不错的。
上面介绍我举荐的书籍,尽管分了入门和进阶,然而很多书中这两局部内容是都蕴含了的。大家看的时候能够依据本人的状况,先打好根底,再进行进阶。
入门
《Python编程:从入门到实际(第2版)》
本书是一本十分根底的 Python 入门书,手把手教,编程小白都能看得懂。
全书分两局部:
第一局部介绍 Python 编程所必须理解的基本概念,包含 matplotlib、NumPy 和 Pygal 等弱小的 Python 库和工具,以及列表、字典、if
语句、类、文件与异样、代码测试等内容;
第二局部将实践付诸实践,解说如何开发三个我的项目,包含简略的 Python 2D 游戏开发,如何利用数据生成交互式的信息图,以及创立和定制简略的 Web 利用,并帮读者解决常见编程问题和困惑。
《”笨办法”学Python 3》
本书是一本 Python 入门书籍,适宜对计算机理解不多,没有学过编程,但对编程感兴趣的读者学习应用。
这本书以习题的形式疏导读者一步一步学习编程,从简略的打印始终讲到残缺我的项目的实现,让初学者从根底的编程技术动手,最终体验到软件开发的根本过程。
《Python基础教程(第3版)》
久负盛名的 Python 入门经典,中文版累计销量 20+ 万册,这一版是针对 Python3 的全新降级。
本书包含 Python 程序设计的方方面面:
首先,从 Python 的装置开始,随后介绍了 Python 的基础知识和基本概念,包含列表、元组、字符串、字典以及各种语句。
而后,循序渐进地介绍了一些绝对高级的主题,包含形象、异样、魔法办法、属性、迭代器。
尔后,探讨了如何将 Python 与数据库、网络、C 语言等工具联合应用,从而施展出 Python 的弱小性能,同时介绍了 Python 程序测试、打包、公布等常识。
最初,作者联合后面讲述的内容,依照理论我的项目开发的步骤向读者介绍了10个具备实际意义的Python我的项目的开发过程。
《Python学习手册(第4版)》
这本书全面、深刻地介绍了 Python 语言,不论你是编程老手还是 Python 初学者,它将帮忙你疾速实现应用 Python 编写高质量,且易于与其余语言和工具集成的代码。
本书每一章都是对于 Python 语言独立的内容,并且带有练习和测试,还有泛滥带正文的示例和图表,简略易学,适宜入门。
《Python Cookbook 中文版(第 3 版)》
本书笼罩了 Python 利用中的很多常见问题,并提出了通用的解决方案,写作的套路就是,先提出问题,再来解决。书中蕴含了大量实用的编程技巧和示例代码,并在 Python 3.3 环境下进行了测试,能够很不便地利用到理论我的项目中去。
非常适合具备肯定编程根底的Python程序员浏览参考。
进阶
《Python外围编程(第 3 版)》
本书是经典滞销图书《Python外围编程(第二版)》的全新降级版本。作者依据 Python 3.0 版本的种种变动,全面改写了书中内容。
整体章节编排来看,波及的知识点比拟多,内容也比拟杂,包含网络编程,GUI 编程,数据库编程等,适宜有肯定编程教训的人,针对特定需要进行浏览。
《深刻了解Python个性》
对语言理解的越多,用起来就越顺,本书只有不到 200 页,这在技术书籍里是很少见的,能够作为《晦涩的Python》的开胃菜。
这本书将通过简略的示例和分步阐明来介绍 Python 的最佳实际以及 Python 代码的弱小魅力。借助本书,你将专一于真正重要的实际技能,在 Python 的规范库中发现「暗藏的金子」。
《晦涩的Python》
本书由奋战在 Python 开发一线近 20 年的 Luciano Ramalho 执笔,Victor Stinner、Alex Martelli 等 Python 大咖担纲技术审稿人,从语言设计层面分析编程细节,教你写出格调纯粹的 Python 代码。
对于想要裁减常识的中级和高级 Python 程序员来说,这本书是充斥了实用编程技巧的宝藏。
《Effective Python:编写高质量 Python 代码的59个无效办法》
很薄的一本书,但看过之后肯定会大有播种。
用 Python 编写程序是相当容易的,但若想把握 Python 所特有的劣势、魅力和表达能力,则相当艰难,而且语言中还有很多暗藏的陷阱,容易令开发者犯错。
本书能够帮你把握真正的 Pythonic 编程形式,令你可能齐全施展出 Python 语言的弱小性能,并写出强壮而高效的代码
《Python高手之路》
本书是偏差于工程实际的一本书,作者分享了很多集体的实战开发教训。
从如何开始一个新的我的项目讲起,首先是整个我的项目的结构设计,对模块和库的治理,如何编写文档,进而讲到如何散发,以及如何通过虚拟环境对我的项目进行测试。
此外,还波及了很多高级主题,如性能优化、插件化构造的设计与架构等。
Web 开发
提到 Python 的 Web 框架,第一反馈就是老三样,Django,Flask 和 Tornado。如果按风行度来排名的话,应该也是这个程序。
在 2016 年,公布了一款 Web 框架,叫 Sanic,体现还不错,应该算是后起之秀。
Django
我的项目地址: https://github.com/django/django
Python 中最风行的 Web 框架,性能十分全面,像平安认证,URL Routing,模板引擎,ORM,甚至 Admin 治理后盾,全副包含。
Flask
我的项目地址: https://github.com/pallets/flask
也是十分风行的一个 Web 框架,它的特定是轻便,灵便,可定制性强。
用户能够依据本人的需要来增加相应的性能,在放弃外围性能简略的同时,实现性能的丰盛与扩大,其弱小的插件库能够让用户实现个性化的网站定制,开发出功能强大的网站。
Bottle
我的项目地址: https://github.com/bottlepy/b…
一个简略高效的遵循 WSGI 的微型 Web 框架。说微型,是因为它只有一个文件,除 Python 规范库外,它不依赖于任何第三方模块。
这个框架应用的比拟少,不过源码也很少,如果想读源码的话,从它动手倒是一个不错的抉择
Tornado
我的项目地址: https://github.com/tornadoweb…
Tornado 是一个基于 Python 的 Web 服务框架和异步网络库,通过利用非阻塞网络 I/O, 能够承载成千上万的流动连贯。在须要长连贯的场景下应用,成果会更好。
Sanic
我的项目地址: https://github.com/sanic-org/…
2016 年 5 月公布的第一个版本,整体体现还是不错的,应用的人也越来越多。
Sanic 是 Python3.7+ Web 服务器和 Web 框架,旨在进步性能。它容许应用 Python3.5 中增加的 async/await
语法,能够使代码无效的防止阻塞从而达到晋升响应速度的目标。
开源我的项目
浏览开源我的项目对进步编程程度是很有帮忙的,上面举荐的开源我的项目有的是我读过的,有的是正筹备读的。
说实话,有的时候看到好的开源我的项目会十分自大,为什么人家就能写出那么优雅的代码,而本人写的是如此垃圾。可能这就是程序员成长的必经之路吧。
alive-progress
我的项目地址: https://github.com/rsalmei/al…
一个用 Python 实现的十分炫酷的进度条我的项目。
python-patterns
我的项目地址: https://github.com/faif/pytho…
应用 Python 实现一些设计模式的例子。
学语言的同时能够学习一些设计模式,在开发过程中应用失当的设计模式,能够使本人的代码更加优雅。
peewee
我的项目地址: https://github.com/coleifer/p…
Peewee 是一个小型的 ORM 我的项目,整体规模不大,更容易学习。
如果想看 Django 源码,无妨从 Peewee 动手。
flask-sqlalchemy
我的项目地址: https://github.com/pallets/fl…
Flask-SQLAlchemy 是一 个Flask 扩大,简化了在 Flask 程序中应用 SQLAlchemy 的操作。
awesome-django-cn
我的项目地址: https://github.com/haiiiiiyun…
又看到 awesome 了,这个我的项目收集了大量 Django 相干的优良利用、我的项目等资源,不便 Django 用户参考查阅。
500lines
我的项目地址: https://github.com/aosabook/5…
这真的是一本神书,在网上也有很多人举荐。它蕴含了十几个不同章节,比方 ci,crawler,ocr 等,每个章节都由该畛域大牛实现。
它的厉害之处就在于每个章节都试图用 500 行,甚至更少的代码去实现相应性能。如果认真钻研各个章节的代码,肯定会对 Python 有更粗浅的了解。
requests
我的项目地址: https://github.com/psf/requests
Kenneth Reitz 大神的成名之作,如果想读 Python 源码的话,那肯定要看,感受一下什么是真正的 Pythonic 代码。
在这里再举荐一份 Requests 源码浏览清单,能够作为参考。
https://github.com/wangshunpi…
awesome-python
网站地址: https://github.com/vinta/awes…
跟大家分享一个小技巧,看到我的项目名中带有 awesome,那阐明这个我的项目肯定不简略。
awesome-python 是 vinta 发动保护的 Python 资源列表,内容包含:Web 框架、网络爬虫、网络内容提取、模板引擎、数据库、数据可视化、图片解决、文本处理、自然语言解决、机器学习、日志、代码剖析等。
看过这个我的项目,那肯定会感叹,常识太多了,基本学不完。
实用工具
Python Tutor
网站地址: http://www.pythontutor.com/
Python Tutor 是由 Philip Guo 开发的一个收费教育工具,可帮忙学生攻克编程学习中的根底阻碍,了解每一行源代码在程序执行时在计算机中的过程。
通过这个工具,能够间接在 Web 浏览器中编写 Python 代码,并逐渐可视化地运行程序。
如果你不晓得代码在内存中是如何运行的,无妨把它拷贝到 Tutor 里可视化执行一遍,加深了解。
在这篇文章 一个对于 += 的谜题 中有过这个工具的应用。
IPython
网站地址: https://ipython.org/
IPython 是一个 for Humans 的 Python 交互式 shell,用了它之后你就不想再用自带的 Python shell 了。
IPython 反对变量主动补全,主动缩进,内置了许多实用功能和函数,同时它也是科学计算和交互可视化的最佳平台。
online-python
网站地址: https://www.online-python.com/
这个没什么可说的,在线编辑和运行代码。
技术社区和博客
- Python 中文开发者社区
- Python 之禅
- Python 之美
- Planet Python
- Armin Ronacher’s Thoughts and Writings
学习编程并不是欲速不达,而是须要长期的保持和训练。整顿这份学习路线,是心愿和大家共同进步。不论是编程老手,还是须要进阶的有肯定教训的程序员,我置信都能够从中有所播种。
文中波及到的资源和思维导图源文件都在 GitHub 开源了,大家能够自取。
以上就是本文的全部内容,如果感觉还不错的话,欢送点赞,转发,和关注,咱们下期再见。
举荐浏览:
- Go 学习路线(2022)
- https://github.com/yongxinz/t…