一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
**替代品:**诗歌,康达
distutils
distutils是setuptools的先驱。后者大量使用来自distutils的功能,因此很多情况下都会用到该工具。这不是你会直接选择使用的工具,但你应该知道它生态中的作用。
Pypi
Pypi是Python Package Index的简称。它存储了所有你可能会用到的Python库。Pip就是从这里获取构建好的包。
**用途:**发布代码
**场景:**要公开发布包时
Pypiserver
Pypiserver是Pypi使用的Package Index API的一个实现。您可以用它来配置自己的代码库,例如为整个公司设置并在那里发布包,而不是公开发布。
**用途:**组织内部共享代码
**场景:**代码不应公开,希望拥有控制权
**替代方案:**Warehouse(Pypi使用的库),djangopypi
Poetry
Poetry是也是一个包管理系统,可以取代setuptools,pip和一些建立在它们之上的工具。这个工具,是对Python打包系统的一次全面重构尝试。到目前为止,它得到了一些支持和很多积极的反馈,但它还远远没有成为主流选择。
**用途:**处理和分发包,管理依赖项
场景有一个新项目而且不怕使用相对小众的工具
**替代方案:**Pipenv
Pipenv
Pipenv和 Poetry 一样,是一种以更加理智的方式构建Python项目依赖关系和配置的工具。它通过Pipfile,管理项目的依赖关系,并确保一致性和易用性。
**用途:**处理和分发包,管理依赖关系
**场景:**想尝试类似 Poetry 的工具,但希望引起更少的问题
**替代方案:**Poetry
Sphinx
Sphinx是构建文档的工具。它最初诞生的目的,是处理Python的文档,但现在已经成为了一个通用文档工具。它仍然是Python项目最常见的文档工具。
**用途:**根据reStructuredText文件,生成PDF或HTML文档
**场景:**希望为项目提供外部文档,API和代码
**替代方案:**Docutils,Doxygen
autodoc
autodoc是Sphinx的基本扩展,允许从Python源代码中生成restructuredText文件,其中包含每个类,函数,模块等的条目。
**用途:**记录代码或API
**场景:**可能每次使用Sphinx进行项目时
**替代方案:**autosummary
py.test
py.test在我看来是Python中最好的测试套件。它具有很多功能,但并非所有功能都得到充分的推广,因此需要一些时间来发现该软件支持的丰富可能性
**用途:**测试代码
**场景:**什么场景下都需要用的,别犯懒
**替代方案:**unittest,nose
Hypothesis
Hypothesis是基于属性的测试工具。简单地说,它会根据你提供的规范生成随机测试场景,直到找到导致测试失败的情况。在开始使用此工具之前,请花点时间了解背后的原理。
**用途:**测试代码,尤其是数据处理
**场景:**需要使用各种输入数(数字,字符串,结构化数据)测试复杂逻辑时
tox
tox本质上是测试工作中的虚拟环境管理器。这意味着配置测试,让其在一系列干净,可自定义的虚拟环境中运行,以确保代码能够在不同条件下工作。所有这些都不需要任何手动处理。
**用途:**需要在不同条件和环境中运行的代码。对CI也很有用。
**场景:**代码需要支持不同的Python版本,在不同的环境和不同的操作系统中运行
**替代方案:**bash scrips,CI pipeline
pyenv
pyenv是一个python版本管理器。它旨在简化开发人员处理多个版本时的本地工作流程。
**用途:**运行支持不同python版本的项目
**场景:**需要使用系统python版本,但是却安装了很多种时
**替代品:**手动管理,virtualenv,Poetry,Pipenv
PyScaffold
PyScaffold是一种以标准化方式初始化项目结构的工具,并提供我们之前列出的一些工具,而无需手动配置它们。它支持高度定制。
**用途:**初始化项目;有多个项目,需要统一的工具和结构
**场景:**各种场景都可以使用(只要你熟悉工具,不要在紧急情况下去尝试新工具)
**替代方案:**python-project-template,Cookiecutter
flake8
flake8是Python最常用的风格检查工具之一。它运行不同的脚本来验证代码是否符合Python的风格指南要求(PEP-8)。
**用途:**验证并保证项目中良好的代码风格
当每次您的项目需要被某人阅读时,包括您自己
**替代方案:**pylint
(1)Python所有方向的学习路线(新版)
这是我花了几天的时间去把Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
最近我才对这些路线做了一下新的更新,知识体系更全面了。
(2)Python学习视频
包含了Python入门、爬虫、数据分析和web开发的学习视频,总共100多个,虽然没有那么全面,但是对于入门来说是没问题的,学完这些之后,你可以按照我上面的学习路线去网上找其他的知识资源进行进阶。
(3)100多个练手项目
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了,只是里面的项目比较多,水平也是参差不齐,大家可以挑自己能做的项目去练练。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
png#pic_center)
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!