共计 5915 个字符,预计需要花费 15 分钟才能阅读完成。
原文链接: 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…