根据 TIOBE 编程语言排行榜,大家可以看出 Python 仍然高居榜首,比第二名的 C++ 高出了足足 5 个百分点,比去年同期也增长了近 3 个百分点。可以说,这几年借着数据科学的东风, Python 老树开新花,在风口浪尖上居高不下。

Python 之所以这么受到大家的青睐,是因为它语言的简洁,上手容易,让非计算机专业的人员也有可能快速上手,享受编程开发带来的便利。但 Python 再简单,它也是一门专业的编程语言,而且上手写几行代码简单,要想真正学好、用好 Python 也是有一定难度的。

不过,2024 年 AIGC 辅助工具大爆发以来,学习编程更加容易了,甚至有不少新闻都在鼓吹用 AI 也能让零基础的人进行编程开发了。

我虽然最近也一直在享受 AI 带来的福利,认同 AI 对学习编程开发确实有很大帮助,但如果说你对编程一窍不通,就想用它开发,那还是有点异想天开了。以我的经验来看,如果你没有编程语言的基本知识,也没有开发项目的基本思维,即便有 AI 的加持,你可能也会遇到既不会提出对的问题,也看不懂它给出答案的尴尬场面。

基于这种观念,我认为,如果你想学习一门编程语言,还是先掌握其基本原理与思维模式。为此,我打算推出一系列 Python 学习的文章,帮助有兴趣学习编程开发的同学快速入门。

入门 Python 所需的时间

首先,大家先了解一下入门 Python 需要多少时间,心里有点数,权衡一下,是否愿意投入这些时间和精力去学习编程开发。

一般来说,学习 Python 的基础知识需要 1~3 个月,如果你是理科生,逻辑思维比较好,1 个月就可以掌握基础知识了。如果你属于文科思维的,也没有受过任何编程开发相关的训练,则可能需要 3 个月的时间才能掌握 Python 的基础知识。

如果全面学习 Python 则需要 4 个月到一年的时间。接下来,我介绍一下,零基础学习 Python 的 6 个步骤。

第一步:搞明白自己为什么要学习 Python

首先,你要搞明白自己为什么要学习 Python,因为 Python 的用途很广泛,应用的领域很多,学习 Python 并不是要学习其基础语法,如果只学习基础语法,你会发现自己还是什么都做不了。所以,在学习 Python 之前一定要搞清楚学习 Python 的目的是什么。

你可以先问一下自己以下几个问题。

  • 你的业务领域是什么,你对此有什么职业规划?你是想做数据科学?后端开发?分析股票?办公自动化?图形处理?系统运维?还是人工智能?
  • 你要解决什么问题?你是想分析数据?搭建网站?执行自动任务?还是机器学习模型?
  • 你的技能水平如何?你是文科生?还是理科生?你是IT专业的学生,有其他编程语言的基础?还是纯粹的编程门外汉?

这些问题的答案将决定你如何规划自己的学习路径,非常重要。

第二步:学习 Python 的基础知识

安装并设置 Python 开发环境

首先,你要安装 Python,并设置编程开发的环境。你可以从 Python 的官方网站下载 Python 的安装包;虽然也有人推荐 Anaconda 的 Python 安装包,它是一个把 Python 好多支持库都打包进来的集成型安装包,但我并不推荐这种方式,因为里面有很多支持库是你用不上的,而且版本的更新也会有延迟,虽然看似对初学者友好,但很快你就会学得处处受限。这也是我的个人体验,仅供参考。

然后,你要选择一个好用的代码编辑器,在此,我推荐使用 VSCode。

如果你还不了解我现在说的这些内容,也不知道该怎么操作,别担心,我很快就会推出系列文章,详细介绍这些内容,你需要做的就是关注我们的公众号,跟着我一起学。

Python 基础概念

安装配置好开发环境之后,你就需要了解 Python 的一些基础概念,例如,变量、数据类型、运算符、关键字等。

编写你的第一个 Python 程序

学习编程最重要的一点就是一定要上手写代码,不能只看书、文章或视频,再重复一遍,一定要自己写代码,并实际运行,自己看看代码输出的效果是什么样的。所以在学习了上述基础知识之后,你要做的就是自己编写一些简单的 Python 小程序,在这个过程中深入理解 Python 的语法与理念。放心,我也会在教程中提供这些示例代码。

数据结构

如果你没有编程基础,可能会不理解什么是数据结构,我先简单给你解释一下,所谓数据结构,就是管理和保存程序中数据的方法,编程过程中涉及各种各样的数据,要有不同的管理方式,以达到高效调用数据的目的。Python 中内置了多种数据结构,例如,列表、元组、集合,还有字典。如果你根本听不明白我说的这些,好吧,现在你有两个选择,一是放弃学习 Python,二是跟着我一起继续学,毕竟我当年就是硬着头皮一点一点啃下来的,没有点咬定青山不放松的劲儿,还真学不了编程。

控制语句

如果你对编程有那么一点经验,那么你有可能听说过,if 语句、for 循环这些概念,这些就是编程语言中最常见的控制语句,Python 也不例外,也提供了条件判断与循环等控制流语句。条件判断语句让我们针对不同条件进行判断,根据不同条件执行不同的操作;循环语句可以让代码执行一些重复的操作。这是编程语言中最核心也是最有用的内容。

函数

编程语言的函数不是数学中的函数,如果你数学不好,也不用担心,它只是一段可以反复利用的代码,让你不用把实现同一个功能的好多行代码一遍一遍地重复写。Python 内置了很多函数,可以让你方便地使用,实现很多功能。例如,日期处理、数学计算、处理文字(编程语言里一般把文字称为文本)等方面函数。

当然,你也要学会编写自己的函数,因为它是让你的代码更简洁,更易用的工具。这方面的知识就是编程开发者经常说的自定义函数,它没有那么难,但你也要遵循一些基本的规则。这些内容我以后都会讲到。

第三步:学习 Python 的中级知识

在你熟练掌握了 Python 的基础知识之后,就开始学习一些进阶的内容,加深你对 Python 的理解。

错误和异常的处理

我相信大家都听说过 Bug 这个词,Bug 在开发中指的是各种各样的代码错误,但这些代码错误又分为两种,一种就是错误,这是指代码本身的错误,还有一种叫作异常,是指因为种种不可控的因素导致的程序出错,这个话题有点长,容我以后再说,在此,我只想告诉你,开发过程中会遇到各种错误与异常,这个话题将陪伴你的开发生涯。

支持库

Python 最强大的地方在于它数量巨大、涉及面广泛的支持库。了解如何使用 Python 支持库是学习 Python 最重要的内容,当你想进行稍微深入一点的 Python 开发时,你都要用到各种各样的支持库,像 Pandas、Django、PyTorch 这样的重要支持库都可以写好几本书呢。但这些才是 Python 的核心。

面向对象的编程

这个概念真不能在本篇文章里展开说,因为它确实有些抽象,但你也别担心,它也没那么难理解,只要掌握了面向对象编程的规则,你也能做得到。

我在这个只说一个最常用的面向对象的概念 ~~ 类,你可以先理解一下人类,动物、猫、狗、汽车这些概念,以后我们再细讲。

第四步:学中干,干中学

我在上文中提到过,学习编程最重要的就是要上手写代码,如果你想学好 Python,或任何一种编程语言,最有效的方法就是积极写代码,不要把时间浪费在看书和视频上,而是尽快开始写代码。

当然,大家也别无解我的意思,我不是说不要你看书或视频,而是说你不能只看书和视频,这样你是学不会编程的,你要跟着书和视频去写代码。

你可以编写任何小项目,不管是办公自动化、数据分析,还是 Web 项目都可以尝试。网上有很多好的项目,你也可以参照学习。使用你学到的 Python 知识,开发一些符合你需求的小项目,是最好的学习方式,它能让你体会到编程开发的成就感,也能让你举一反三,深入理解所学到的知识。

第五步:创建你自己的项目集

把你自己的项目汇编成作品集。这些项目应当反映你的技能与方向,根据你的职业规划量身定制,展现你解决问题的能力。以下是一些项目的建议。

  • 初级项目:简单的小项目,例如,猜数字游戏、TODO列表,基础的数据分析项目。
  • 中级项目:稍稍复杂一些的项目,例如,爬虫项目、博客网站或简单的机器学习项目。
  • 高级项目:大型项目,例如,全栈 Web 项目、复杂数据分析项目、数据可视化项目及 PyTorch 深度学习项目。

第六步 再接再厉

学无止境,在完成以上五个步骤之后,你还要再面对一些更高级的挑战。但记住一点,要专注于你的职业目标与个人兴趣,不要无的放矢。


最后奉劝大家,无论是数据科学、Web 开发,还是机器学习,Python 中要学的东西很多。记住,学习 Python 也好,学习其他编程语言也罢,这个学习的过程就像一场马拉松,一旦你决定学习编程开发,就要做好长期投入的准备,从我的经历来看,要学的东西是越来越多,没完没了,要学的东西太多了,你们可要做好长期奋战的心理准备。