有大量 文章探讨 了 Python 为何如此受欢迎,但作为复习,让我们在这里开始一场激烈的战争,并简要讨论一下它与其他语言的比较:
-
易于学习。与C++或Java不同,Python 相对更容易上手,即使对于新手来说也是如此——这也是为什么它是编程课程介绍性语言的首选语言之一。
-
旧的和新的。与Visual Basic(似乎没有经受住时间的考验)或Go(相当新,2009 年 11 月)不同,Python 是一种_相对较_旧的语言(1990 年),正在积极开发中,事实证明它已经过时了好。
-
包括电池。与上面提到的_所有_语言不同,Python 有一个巨大的所谓标准库,涵盖了从特定领域到一般任务的各种任务。
所有这一切都使 Python 成为一种语言,它几乎可以_非常容易_地对任何东西进行原型制作,(甚至是不使用汇编程序的微控制器!)并立即推出最小可行产品。
更重要的是——是的,这是非常有偏见的,但是…… ——Python 很有趣!
但足够的赞美;让我们深入研究一下。我将重点介绍一些展示 Python 强大功能的工具。当然,还有更多的发现。
AI
如今,人工智能无处不在(我敢于让你找到一个随着人工智能的出现而无法改进的过程),而且它是_一个广阔的研究领域,Python 无疑在其中大放异彩_。
毫不奇怪,您会发现与数据科学部分的一些共同点,所以让我们稍后也赶上更多的包!
套餐
-
scikit-学习。一个非常易于使用的机器学习库(例如,用六行代码训练一个监督学习算法),具有用于数据挖掘和数据分析的简单高效的工具。
-
TensorFlow。还有更多的机器学习,但具有数据流和可微分编程。对于使用神经网络开发深度学习模型也非常强大。
云开发
您能想到的所有集成,包括移动、物联网(IoT)、各种 API,甚至管理和配置基础设施即代码(IaC)——所有这些都意味着云。
作为一名 Python 程序员,这意味着_您有机会在无服务器执行模型中开发微服务_。
套餐
-
Django REST 框架。一个强大而灵活的工具包,用于构建可浏览的 Web API。它支持序列化、身份验证策略和视图自定义等功能。在 Django 上运行,它也有很好的文档记录。
-
鼠兔。RabbitMQ的纯 Python 实现,这是一个大规模、高可用性的消息代理,允许跨不同平台和系统进行异步消息传递。
-
无服务器框架。在使用 Node.js 开发时,if 提供了关于如何构建 Python 应用程序并将其部署到 Amazon Web Services (AWS)、Google Cloud Platform (GCP) 和 Microsoft Azure的示例。
此外,熟悉**AWS Lambda、Amazon API Gateway、Cloud Functions和Azure Functions**也很好。这些是您将用来将 Python 代码实际部署到云中的 Amazon、Google 和 Microsoft 服务。
加密货币和金融
我不会在这里讨论比特币和其他加密货币是否是经济泡沫(它们是!),因为这会引发无休止的激烈辩论。
但有一件事是肯定的:*区块链技术的使用比加密货币和ICO更进一步。)
如果您想深入研究金融方面,您可以将这些知识应用到所有金融市场——包括加密货币。
套餐
Python 主要用作服务器端语言,而不是客户端(例如钱包)。考虑到这一点,要开发区块链,您实际上可以使用 TensorFlow 和 Django 等框架(有关详细信息,请分别参见 AI 和 Web 开发部分)。
也就是说,有一些与区块链和金融相关的软件包可能会派上用场,例如**api-v1-client-python(区块链比特币开发人员 API)和SmartPy** ( Tezos的智能合约语言)。
对于定量分析,请查看 pandas(参见数据科学部分)和**Zipline**(python 算法交易库)。
数据科学
就像 AI 一样,Python 在 R 和 MATLAB 等参与者中庄严地证明了它在数据科学领域的地位。
说实话,虽然不是通用工具,但与 Python 相比,这些其他语言在性能和功能方面确实具有优势。然而,现在情况不再如此,因为 Python 从那时起已经走过了_漫长的道路,_几乎没有任何给定的任务你不能在 Python 中像在这些其他平台上那样有效地执行——如果不是更有效的话。Python_仍然_是一种通用语言,这意味着它可以为您做更多的事情。
套餐
-
数字货币。Python 遇上 MATLAB:支持大型多维数组和矩阵的线性代数,以及用于操作它们的大量高级数学函数。
-
熊猫。用于数据分析的高性能、易于使用的数据结构,特别是数值表和时间序列的数据操作。看看这个数据学校的视频系列!
Web 开发和移动应用程序
是的,Web 开发仍然是 2020 年的事情!谁知道?如果你问我,不仅网络开发还有很多年,而且网络和移动应用程序之间的界限只会变得更加模糊。
诚然,Python 在这里可能不会发挥主导作用,但有一个优势:您可以更轻松地进行项目管理,移动团队成员,因为您正在使用的生态系统的其他端很可能_也_将使用 Python 开发.
最后
🍅 硬核资料:关注即可领取PPT模板、简历模板、行业经典书籍PDF。
🍅 技术互助:技术群大佬指点迷津,你的问题可能不是问题,求资源在群里喊一声。
🍅 面试题库:由技术群里的小伙伴们共同投稿,热乎的大厂面试真题,持续更新中。
🍅 知识体系:含编程语言、算法、大数据生态圈组件(Mysql、Hive、Spark、Flink)、数据仓库、Python、前端等等。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!