怎么自学 Python,大概要多久?

这个问题建议是最好能基于目标再做时间预算,因为 Python 能做的事情太多了,所以也导致不同的用途所需学习时间不一样。先引用骆昊先生在 GitHub 上的项目“Python - 100 天从新手到大师”中对 Python 使用领域以及工作岗位的描述,这样对 Python 有了进一步的了解后,再做时间规划可能就更合适了。

Python 在以下领域都有用武之地:后端开发 - Python / Java / Go / PHP;

DevOps - Python / Shell / Ruby;

数据采集 - Python / C++ / Java;

量化交易 - Python / C++ / R;

数据科学 - Python / R / Julia / Matlab;

机器学习 - Python / R / C++ / Julia;

自动化测试 - Python / Shell。

作为一名 Python 开发者,根据个人的喜好和职业规划,可以选择的就业领域也非常多:Python 后端开发工程师(服务器、云平台、数据接口);

Python 运维工程师(自动化运维、SRE、DevOps);

Python 数据分析师(数据分析、商业智能、数字化运营);

Python 数据挖掘工程师(机器学习、深度学习、算法专家);

Python 爬虫工程师;

Python 测试工程师(自动化测试、测试开发)。

那么,现在对 Python 的用途有了更深入的了解后,万丈高楼平地起,第一步是先把 Python 语言基础以及进阶部分攻克。回到问题,怎么自学 Python,大概要多久?如果按骆昊先生的项目教程,21 天就可以了,学习完 Day16~Day20 - Python 语言进阶后就开始进入分支,这时候可以回答题主的问题“大概要多久?”答案是 21 天!在完成这一阶段的学习后,再制订后续分支领域的学习计划才更有意义。

到这里可以小结一下,也算是回答了题主问题中的一部分。Python 用途非常广泛,但必须把 Python 语言部分攻克,才能进入不同的领域。如果以骆昊先生的项目“Python - 100 天从新手到大师”为参考,21 天就可以把 Python 语言部分攻克,之后就可以继续不同的领域了。以下再尝试回答题主问题的另一部分,怎么自学 Python,这里所指的学习同样是 Python 语言部分的学习,即是怎么学习 Python 语言。

具体怎么学习呢?往简单里说,直接按“Python - 100 天从新手到大师”这个项目的教程从 Day0 到 Day20 过一遍就可以了。稍微夸张地说,只要你能在 CLI,编辑器或 IDE (如:VS Code、PyCharm )打印出 Hello, World! ,你就完成这个阶段的一半学习任务了。为什么这样说呢? @王树义 老师在文章《如何安装Python运行环境Anaconda?(视频教程)》中说过一番话,颇为深刻,根据我多次线下编程工作坊获得的反馈经验,发现Python初学者居然在环境安装步骤,就很可能遭受挫折。

如果没有有效的指引,初学者往往会把大量的时间花在低水平试错上。

把大量的时间花在低水平试错上往往会导致“从入门到放弃”,所以尽快打印出 Hello, World! ,这是成功的一半。这一步切忌花太多时间,不然会消磨掉你的意志,虽说是自学,这一步如果遇到太大困难,尽量找到帮手,面对面,手把手,帮你渡过这个“难关”。 (备注:如果方便,可以使用线上编程环境。)

在这里还需要引入一个概念,写程序可能会产生错误,程序的错误被叫做 bug,调试的过程就叫 debug 了,《像计算机科学家一样思考 Python》一书每一章的末尾,作者也给出一些关于调试方面的建议, 这些建议都很有参考价值。

学编程必须要掌握一定的 debug 技巧,广义上说,debug 可以相当于解决问题的能力,解决问题又包括寻求帮助,《 Python 编程:从入门到实践》一书的附录中就专门为我们指出如何才能获得帮助,第一步,陷入困境后,首先需要判断形势。你必须能够明确地回答如下三个问题,才能够从他人那里获得帮助。你想要做什么?

你已尝试哪些方式?

结果如何?

有时候,通过回答这三个问题,你会发现遗漏了什么,从而无需再做其他的事情就能摆脱困境。程序员甚至给这种情形提供了一个名称,称之为橡皮鸭子调试法。如果你向一只橡皮鸭子(或任何无生命的东西)清楚地阐述自己的处境,并向它提出具体的问题,你常常能够回答这个问题。要获得帮助,除了提问,当然还包括搜索,线上问答,社区,论坛等等资源。

一点小 Tips,配合速查表(cheat sheet)学习,可能事半功倍。因为:Cheat sheets are the 80/20 principle applied to learning to code: learn 80% of the features in 20% of the time.

《 Python 编程:从入门到实践》一书的附赠资源中就包含了一份 PDF 格式的 Python 入门速查表。《 Python 编程:从入门到实践》附赠 Python 入门速查表

其实已经有很多大佬为 Python 初学者制作了多份速查表,只要搜索搜索就能发现,你可以多做比较,找到更合适自己的速查表,甚至还可以自己制作并分享,让更多学习者获得帮助。譬如 finxter 上就能找到极其友好的 Python 速查表。(关于 finxter,这个网站是关于学习 Python 的小知识,你可以在喝咖啡休息时轻松享受 Python 的乐趣。Finxter | Learn Python in Your Coffee Break)Finxter 提供的 Python 入门速查表

那么速查表怎么用呢?速查表的使用方法可以是:download the PDF file, print it, and post it to your office wall.

至此已经回答题主所提出的全部问题,当然这只是一种参考。怎么自学 Python,大概要多久?首先确定你的目标,但无论目标是 Python 众多领域中的哪一项都必须从基础起。基础部分 21 天基本可以攻克,可以按骆昊先生在 GitHub 上的项目“Python - 100 天从新手到大师”项目教程一步一步来学习,尽快输出你的第一行 Hello, World! ,避免把大量的时间花在低水平试错上。同时必须掌握一定的调试技巧,再配合速查表(cheat sheet)学习,一般可事半功倍。

延伸阅读:GitHub 教程项目 Python - 100 天从新手到大师​github王树义:如何安装Python运行环境Anaconda?(视频教程)​zhuanlan.zhihu怎样在vs code上搭建python环境?​www.zhihuPython 应该怎么学?​www.zhihu陈哲:不只是程序员,也适合大家的问题解决法——小黄鸭调试法​zhuanlan.zhihu

更多推荐

在哪自学python_怎么自学python,大概要多久?