当前位置: 首页 > news >正文

2024 年我将如何从头开始学习 Python

原文:towardsdatascience.com/how-i-would-learn-python-in-2024-from-zero-b1c5edcdec84


现在,Python 是数据科学领域的首选语言。大多数前沿的机器学习库都是用 Python 编写的,你几乎找不到不要求 Python 作为要求的招聘数据科学职位。

然而,Python 在计算机科学的许多其他领域都有应用:

  • 网站开发

  • 游戏开发

  • 后端工程

因此,对于想要进入编程、数据科学领域或希望成为开发者的人来说,Python 是一种非常实用且多才多艺的语言去学习。

我已经用 Python 编码超过 4 年了,在这篇文章中,我想解释如果我从零开始,我会如何学习 Python。

YouTube 视频链接

第一步:选择你的课程

首先,我会选择一个看起来不错或来自我知道有良好 Python 技能的人的推荐的入门/初学者课程。

你可能在我的之前的文章中听到过我提到,没有所谓的“正确”的课程。虽然这确实是真的,但一些课程通常被认为或评价得比其他课程更高,选择流行的选项通常是一个更安全的赌注。

实际上,任何顶尖的课程都会教授相同的内容,所以不必过于担心这一点。只需挑选一个,开始行动即可!

我学习 Python 的一门课程是 W3Schools 教程。我喜欢它的简单性,并为每个主题提供了动手练习。它也不需要花费很长时间来完成,你可以在每晚学习几个小时的情况下,可能在一周内完成整个课程。

完成并不意味着我了解 Python 的所有内容,但它让我对 Python 的整体情况有了了解,并且我对这些概念的理解也更好了。

Python 教程

我还听说过其他一些课程,它们都得到了很好的评价,我也非常喜欢:

学习 Python 3 | Codecademy

Python for Everybody

顶级 Python 训练营:学习 Python。获得工作。| 从零到精通

上述任何选项都不会出错。主要的是选择一个并坚持到底。不要像我说的那样过于纠结于“最佳”选项。

你想从这些课程中学到的最主要的东西是:

  • 变量和数据类型

  • 布尔和比较运算符

  • 控制流和条件

  • for 和 while 循环

  • 函数

  • 原生数据类型(列表、字典、元组等)

这个列表应该涵盖了在完成 Python 入门课程后你应该知道的大部分概念。这个列表绝对不是详尽的,上面列出的主题中还会有其他子概念。

第 2 步:持续练习

我喜欢**纳瓦尔·拉维坎特**,这位著名的企业家和投资者的一句话:

不是 10,000 小时,而是 10,000 次迭代。

cdn.embedly.com/widgets/media.html?type=text%2Fhtml&key=a19fcc184b9711e1b4764040d3dc5c07&schema=twitter&url=https%3A//twitter.com/naval/status/1594923336043069441%3Flang%3Den-GB&image=

10,000 小时的想法来自**马尔科姆·格拉德威尔在他的书异类**中。信息是,要“成功”或“精通”某种技能需要 10,000 小时。显然,“成功”和“精通”这两个词对不同的人来说意味着不同的事情,但你可以得到这个前提的一般想法。

书中的一个例子是,比尔·盖茨在他青少年和成长时期花了很多小时编码。他在年轻时与计算机的这段时光很可能帮助他建立了科技巨头微软。

然而,拉维坎特更进一步,说正是 10,000 次迭代导致了精通。这并不一定完全关乎时间的量,而是你投入的重复次数。

我完全同意他的方法。在我看来,如果比尔·盖茨只是阅读教科书而不尝试自己编写代码,他可能不会成为一个成功的程序员。通过实际“做”,他可能犯过错误,学会了如何修复它们,并且随着时间的推移逐渐完善了他的知识。只有通过有意识的练习和随后的失败,我们才能真正“精通”某件事。

现在,这就是我们在学习 Python 的第二步需要采取的态度,那就是关于持续练习。正如我们刚才说的,我们需要一致的重复来真正擅长某件事,所以我们需要付出一致的努力来精通 Python。

在入门课程中学习基础知识之后,我建议你实施一个帮助你定期用 Python 编码的常规,几乎让它成为一种习惯。

理想的情况是,你能够每天编码和练习。我明白对于一些人来说,这可能不太可行(其他承诺等),但至少尝试每周编码两次。这不需要太长时间,几个小时可能就足够让一些真正的深度工作发生,并且有足够的时间消化材料。

在资源方面,我非常喜欢并在我刚开始时使用了HackerRank。它基本上是一个包含各种难度的小型编码问题的封闭环境。如果你卡住了,他们有提示和解决方案来帮助你,这样你可以快速迭代并学习。

HackerRank – 在线编码测试和技术面试

HackerRank并非唯一的此类平台,其中最著名的是LeetCode(大多数技术专业人士可能都见过)和Codeacademy也是一个非常受欢迎的选择,经常出现在人们的视野中。

LeetCode – 全球领先的在线编程学习平台

免费学习编码 – Codecademy

就像之前的步骤一样,选择哪个平台其实并不重要,只要选择一个并开始解决问题即可。从上述任何一个平台你都能获得相同的价值。

对于这一步,没有定义的解决问题数量。在我感觉开始上手之前,我大约解决了~50个 HackerRank 问题,但这个数字因人而异,受到许多因素的影响。

解决足够的问题,直到你感到在 Python 中编码很舒服,并且真正理解其语法。我并不是说你应该能够完美回答每一个问题,但至少要知道如何接近它们,并合理尝试解决它们。在我看来,当你开始掌握 Python 时,你会内心有感觉。

第 3 步:项目,项目,项目

现在你已经掌握了基础知识,并了解了 Python 的工作原理,是时候自己动手做一些东西了!

项目是学习编程中任何东西的圣杯。它们将允许你混合使用概念,调试错误,并巩固你对 Python 的整体理解。

可能的项目列表是无限的,但我认为最好选择与你想从事的职业相符的项目。例如,如果你想成为一名数据科学家,可以做一些机器学习或数据分析项目。我之前有一篇博客,提供了一些关于作为数据科学家可以构建的“优质”项目建议,以丰富你的简历。

初学者数据科学学生常犯的 6 个错误

如果你想要成为一名网页开发者,那么就构建一些网站。你可以使用Django框架在 Python 中完成这项工作。如果你想要通过构建自己的作品集来获得一些实际使用 Django 的经验,我推荐RealPython的这个教程!

开始使用 Django:构建作品集应用 – Real Python

RealPython 也有一个很棒的博客文章,关于如果你想成为一名后端 Python 开发者,可以尝试的一些中级项目。

中级 Python 开发者 13 个项目想法 – Real Python

机会无限,但如果你知道你想进入哪个领域,那么这真的会帮助你确定你应该做的项目。

如果你不确定想在哪个领域使用 Python,我下面链接了一个很棒的博客,解释了一些你可以从事的职业。试着找到你喜欢的领域,并在那个领域做一些项目。如果你后来觉得不是你的菜,你总是可以改变方向的!

学习 Python 可以拥有的职业

就像前两个步骤一样,我的主要建议就是开始。选择一个项目,全力以赴。项目本身并不是最重要的部分,而是你通过执行它所能获得的学习收益。

摘要 & 进一步思考

Python 无疑是最受欢迎的语言之一,它开辟了如此多的不同职业道路,绝对值得学习。在这篇文章中,我们解释了你可以遵循的从零开始学习 Python 的逐步过程。

  • 第一步: 选择一个入门级课程

  • 第二步: 在 Hacker Rank 或 LeetCode 等平台上持续练习

  • 第三步: 在你想要进入的领域做一个项目

现在,我并不是说这些步骤会立刻让你找到你的梦想工作,但它们会快速教会你 Python,并让你能够快速迭代你的学习成果。

就像所有事情一样,这需要努力工作,有时你可能会发现自己头撞南墙,但最终这将是值得的!

另一件事!

我提供 1:1 咨询电话,我们可以聊任何你需要的事情——无论是项目、职业建议,还是只是确定你的下一步。我在这里帮助你前进!

[1:1 导师咨询 – Egor Howell]

职业指导、工作建议、项目帮助、简历审查topmate.io](https://topmate.io/egorhowell/1203300)

与我联系

  • YouTube

  • LinkedIn

  • Instagram

  • 网站

http://www.cnnetsun.cn/news/160775.html

相关文章:

  • 在 Windows 上 基于“适用于 Linux 的 Windows 子系统(WSL)”开发linux项目
  • Langchain-Chatchat能否支持API网关统一接入?
  • FaceFusion能否用于科学可视化?大脑活动映射面部
  • Langchain-Chatchat能否实现文档变更自动检测同步?
  • AI 智能体企业级自动化评估实用指南
  • 产后恢复难题多?蓝丝带专业支持,助万千妈妈重拾美丽自信
  • Langchain-Chatchat能否实现文档分类自动打标?
  • 实测GPT Image 1.5,跑分第一的它击败Gemini了吗?
  • docker compose安装gitea
  • gitea和gitlab有什么区别
  • CH579硬件休眠模式节能设计
  • 【GRNN-RBFNN-ILC算法】【轨迹跟踪】基于神经网络的迭代学习控制用于未知SISO非线性系统的轨迹跟踪(Matlab代码实现)
  • AI智能体 - 资源感知优化模式
  • 当学术焦虑撞上AI时代:一位理工科研究生的论文自救指南——如何用智能工具化解从开题到定稿的“写作围城”
  • Langchain-Chatchat问答系统自动纠错机制探索
  • next-ai-draw-io 用这款AI 画图几十秒就搞定了
  • FaceFusion换脸出现鬼影怎么办?常见问题排查手册
  • 数据安全治理解决方案(附下载)
  • 【虚拟同步机控制建模】分布式电源的虚拟同步控制 + 双环控制(Simulink仿真实现)
  • FaceFusion人脸融合在虚拟快递员形象定制中的创新尝试
  • 12月的财务工作要达到的强度
  • 如何用GVHMR实现精准的3D人体运动恢复?5大核心技术解析
  • TachiyomiJ2K通知系统:5分钟学会智能漫画更新提醒配置
  • 使用lsp-zero.nvim快速配置Neovim的LSP功能
  • Oxigraph 实战手册:构建下一代语义智能应用的核心引擎
  • ESP32与心率监测联动冥想引导
  • QuickLook终极指南:5分钟掌握Windows快速预览神器
  • Java泛型详解(内附代码示例),零基础小白到精通,收藏这篇就够了
  • 刚刚!Science公布2025年度十大突破,第一名来自中国!
  • Web开发者进阶AI Agent:LangChain提示词模板与输出解析器实战