如何迅速掌握 Python 编程?

发表时间: 2023-09-24 08:04

在本文中,我们将介绍如何有效地学习 Python 。你应该知道「数据科学」是用于解决、探究问题并从数据中提取有价值信息的科学。

为了有效地做到这一点,你需要整理数据集、训练机器学习模型、可视化结果等等。

这是学习 Python 的最佳时机。

事实上,从就业需求增长的角度而言,福布斯将其列为十大技术技能。今天让我们来讨论一下这是为什么……

为什么要学习 Python?

Python 是世界上使用最广泛的语言之一,它拥有一个热情的用户社区:


Python 流行度,TIOBE 指数


它在数据科学专业中拥有更忠实的追随者。

有些人通过「你好,世界!」的简单程序来判断编程语言的质量。按照这个标准,Python 可以做得很好:

为了比较,下面是 Java 中的相同输出:

好吧,说真的,简单是 Python 的最大优势之一。由于其精确高效的语法,Python 可以用比其他语言更少的代码完成相同的任务。这使得实施解决方案的速度令人耳目一新。

此外,Python 充满活力的数据科学社区意味着您将能够找到大量的教程、代码片段和修复常见错误。Stackoverflow将成为您最好的朋友之一。

最后,Python 拥有用于数据分析和机器学习的 全明星库(也称为包)阵容,这大大减少了产生结果所需的时间。稍后会详细介绍这些。

如何有效地学习 Python ?

在我们讨论你需要学习的内容之前,让我们讨论一下你不需要的内容。

你不需要 CS 学位。

大多数数据科学家永远不会处理诸如内存泄漏、密码学或「Big O」符号之类的主题。只要您可以使用 Python 或 R 等脚本语言编写干净、符合逻辑的代码,就可以了。

你不需要完整的 Python 课程。Python 和数据科学不是同义词。



你不需要记住所有的语法。

相反,专注于掌握直觉,例如何时函数合适或条件语句如何工作。在谷歌搜索、阅读文档和良好的实践之后,你将逐渐记住语法。

我们建议采用自上而下的方法。

我们提倡自上而下的方法,目标是首先获得结果,然后随着时间的推移巩固概念。事实上,我们更愿意放弃「课堂」学习,转而进行现实世界的实践。

1、你将从学习核心编程概念开始。

2、接下来,您将获得基本数据科学库的实用知识。

3、最后,您将通过实际项目练习和完善您的技能。

这种方法可以让你获得更多乐趣的同时迅速掌握。


第 1 步:核心编程概念


有效的编程不是要记住语法,而是掌握一种新的思维方式。


因此,花点时间为核心编程概念打下坚实的基础。这些将帮助您将头脑中的解决方案转化为计算机的指令。


如果你是编程新手.......我们推荐优秀的 Automate the Boring Stuff with Python 一书,该书已在创作共用许可下免费在线发布。


这本书承诺「为初学者提供实用的编程」,并且让每节课都脚踏实地。阅读第 6 章 - 操作字符串并完成练习题。



如果你只需要复习 Python 语法,那么我们推荐以下视频:

https://youtu.be/N4mEzFDjqtA

同样,这一步的目标不是学习有关 Python 和编程的所有知识。相反,专注于直觉。

你应该能够回答以下问题:

• 整数、浮点数和字符串有什么区别?

• 如何使用 Python 作为计算器?

• 什么是 for 循环?我什么时候写一个?

• 函数的基本结构是什么?

• 如何使用条件语句(if...else...)来添加逻辑?

• 导入语句如何工作?

如果你想练习更多核心编程概念,请查看以下资源。

Code Fights 是一个平台,有许多简短的编码挑战,可以在 5 分钟内完成(尽管它非常有趣,你可能会发现自己一次玩几个小时)。您将在此过程中获得积分并解锁新关卡,这也是跟踪你的进度的好方法。

Python Challenge 是网络上最酷的谜题之一,所以不要被它 1990 年的图形吓到。你可以在 Python 脚本的帮助下完成所有 33 个级别。一位用户称它为「一种令人上瘾的学习 Python 细节的方式……」我同意!

PracticePython.org 是 Python 中简短练习题的集合。它几乎每周都会更新一个新问题。真正好的是作者为每个问题包含了多个用户提交的解决方案,因此您可以看到解决它们的替代方法。

How to Think Like a Computer Scientist 是一本很棒的交互式在线书籍,它通过关键的编程概念(使用 Python)进行了一次旋风之旅。如果您对编程完全陌生,这可能是一个不错的选择。这就像一个浓缩的「CS 101」课程。

第 2 步:基本数据科学库

接下来,我们将专注于「如何为数据科学学习 Python」的数据科学部分。

正如我们之前提到的,Python 拥有一系列用于数据科学的全明星库。库只是预先存在的函数和对象的捆绑,您可以将它们导入脚本以节省时间。

这些是我们推荐的有效获取新库的操作步骤:

1、打开一个新的 Jupyter Notebook(见下文)。

2、阅读图书馆的文档 30 分钟,了解其模块的高级介绍。

3、将库导入您的 Jupyter Notebook。

4、按照其分步快速入门教程查看库的运行情况。

5、再花 30 分钟查看它的文档,以了解它还能做什么。

我们不建议现在更深入地研究图书馆,因为当你进入项目时,你可能会忘记大部分你学到的东西。相反,旨在发现每个图书馆的能力。

如果你按照我们上面的建议通过 Anaconda 捆绑包安装了 Python,那么Jupyter Notebook也会附带它。Jupyter Notebook 是一个轻量级的 IDE,深受数据科学家的喜爱。我们为你的项目推荐它。你可以通过 Anaconda 附带的 Anaconda Navigator 打开一个新笔记本。查看此短视频以获取说明。

这些是你需要的基本库:

数字货币

NumPy 允许简单高效的数值计算,许多其他数据科学库都建立在它之上。

• 文档

• 快速入门教程

熊猫

Pandas 是用于数据结构和探索性分析的高性能库。它建立在 NumPy 之上。

• 文档

• 快速入门教程

Matplotlib

Matplotlib 是一个灵活的绘图和可视化库。它功能强大但有些麻烦。您现在可以选择跳过 Matplotlib 并使用 Seaborn 开始(请参阅下面的 Seaborn 建议)。

• 文档

• 快速入门教程

Scikit-学习

Scikit-Learn 是 Python 中首屈一指的通用机器学习库。它有许多流行的算法和模块,用于预处理、交叉验证等。

• 文档

• 快速入门教程

奖金:Seaborn

Seaborn 使绘制常见数据可视化变得更加容易。它建立在 Matplotlib 之上,并提供了一个更令人愉快的高级包装器。

• 文档

• 快速入门教程

第 3 步:端到端项目

到目前为止,你将对编程有基本的了解,并对基本库有一定的应用知识。这实际上涵盖了你开始使用数据科学所需的大部分 Python。

此时,有些学生会感到有些不知所措。没关系,这很正常。

如果你采用缓慢且传统的自下而上的方法,你可能不会感到不知所措,但到达这里需要 10 倍的时间。现在的关键是立即投入并开始将所有东西粘合在一起。同样,我们到这里的目标只是学到足够的东西才能开始。

接下来,是时候通过大量的实践和项目来巩固你的知识了。你有几个选择:

Kaggle 比赛

第一种选择是参加 Kaggle,这是一个举办数据科学竞赛的网站。

Kaggle 的主要优势是每个项目都是独立的。你将获得数据集、目标和教程以帮助您入门。

竞赛的主要缺点是它们通常不能代表真实世界的数据科学。「入门」比赛太基础了,而标准比赛(即有奖池的比赛)通常对初学者来说太难了。

如果你对这条路径感兴趣,请查看我们的 Kaggle 初学者指南。

DIY项目

另一种选择是构建你自己的项目并选择你感兴趣的数据集。

这种方法的主要优点是项目更能代表现实世界的数据科学。你可能需要定义自己的目标、收集数据、清理数据集、设计功能等等。

DIY 项目的缺点是你需要已经熟悉适当的数据科学工作流程。没有一个,你可能会错过重要步骤或在不知道如何继续的情况下陷入困境。如果你选择这条路,请查看我们的文章,其中包含几个 DIY 项目想法