自从20世纪90年代初发布以来,Python一直相当火爆,在这二十多年里,它的流行程度远远超过了C、C#、Java甚至Javascript。

虽然Python在数据科学和机器学习领域占主导地位,甚至是科学和数学计算领域的主角,但与Julia、Swift和Java等语言相比,它确实有些欠缺。

为什么Python如此受欢迎?

Python迅猛发展背后的一个主要驱动力是它学习起来相当容易,使用起来功能强大。对于初学者来说,像C/C++这样有难度的编程语言,不熟悉语法的人都会敬而远之,所以Python显得非常有吸引力。

语言的核心是代码可读性,Python的语法简洁而富有表现力,开发人员无需编写大量代码,便可以表达想法和概念 (C或Java等底层语言的情况也是如此)。它非常地简单, 并可以与其他编程语言无缝集成 (比如将CPU密集型任务交付予C/C++)。用Python语言开发会给开发人员带来许多好处。

Python应用广泛的另一个原因是它被企业大量使用 (包括FAANG)。今天,对于你能想象到的任何项目,你都可以找到一个相应的Python包—-科学计算的有Numpy,机器学习的有Sklearn,计算机视觉的有Caer。

Python的弱点

它很慢,太慢了。

不用多说,速度通常是开发人员最为关注的焦点之一。不仅是现在,将来的很长一段时间都会如此。

Python“缓慢”的主要原因,可以归结为以下两点—-首先,Python是解释性的语言,而不是编译型的语言,这终究会导致执行时间的缓慢;其次,它是一种动态的语言 (变量的数据类型在执行期间由Python自动推断)。

初学者经常对“Python的确太慢”的说法产生争议,事实上,的确如此,但也并非完全这样。

例如, Python的机器学习库TensorFlow实际上是用C++编写的,在Python中进行调用而已,是在C++的上层实现的一个Python“封装器”。Numpy是如此,Caer也是类似的形式。

Python有一个GIL(L)

Python缓慢的主要原因之一是GIL(Global Interpreter Lock)的存在–它一次只允许一个线程执行。这虽然有助于提高单线程的性能,但限制了并行性,而开发人员为了提高速度必须实现多线程处理程序。

不是内存密集型任务的最佳选择

当对象超出范围时,Python会自动进行垃圾收集。其目的是消除C和C++在内存管理中涉及的许多复杂性。由于指定的数据类型缺乏灵活性,Python消耗的内存量可能会迅速爆增。
此外,在运行时,一些BUG 可能会被Python忽略,最终成为延缓开发过程的主要诱因。

在移动计算中表现牵强

随着从台式机到智能手机的迁移,显然,人们需要为手机软件构建更强大的语言。虽然Python在计算机和服务器平台上有不错的表现,但由于缺乏强大的移动计算处理能力,在移动开发中它往往会失去优势。
近年来,(Python)在这方面有了很大的进步,但这些新增加的库与他们强大的竞争对手相比,如Kotlin,Swift和Java,还相去甚远。

其他语言的兴起

最近,像Julia、Rust和Swift这些新出现的语言,借用了Python、C/C和Java的许多良好设计概念——Rust确保了运行时的内存安全和并行,并提供了与Web Assembly的一样的互操作性;由于它支持LLVM编译器工具链,Swift几乎和C一样快;Julia提供了用于I/O(输入/输出)密集任务的异步I/O,而且速度惊人。

结论

Python并非最好的编程语言,它无法取代C/C++和Java。它被打造成一种通用的编程语言,强调可读性、以英语为中心的语法。人们利用它可以快速开发程序和应用程序。
和其他语言一样,Python只是一种工具。某些应用场景下,它是最好的工具;在另一种场景下,它或许不是。在大多数情况下,它 “挺好用的”。

那么,作为一种编程语言,Python会消亡吗?

我不这么认为。

它逐渐失去魅力了吗?

啊,也许只是一点点,只是一点点。

Python会消亡吗?相关推荐

  1. 2020,Python 已死?

    点击上方"大鱼机器人",选择"置顶/星标公众号" 福利干货,第一时间送达! 自从 20 世纪 90 年代初发布以来,Python 一直相当火爆,在这二十多年里, ...

  2. Python正在褪色,最晚2030年就被淘汰

    我觉得并不会被淘汰,只是应用场景决定了最好的语言. 大数据文摘出品 来源:medium 编译:陈之炎.coolboy 自从20世纪90年代初发布以来,Python一直相当火爆,在这二十多年里,它的流行 ...

  3. Python 2.x 即将终止支持,是时候和 Python 2 讲再见了

    别再约束自己了,Python 2将在2020年寿终正寝. Python 2的报废(EOL)日期迟迟未到,不过现在终于有了眉目.自2020年1月1日起,Python 2将不再得到支持.Python的核心 ...

  4. python魅力_Python逐渐失去魅力

    自从20世纪90年代初发布以来,Python一直相当火爆,在这二十多年里,它的流行程度远远超过了C.C#.Java甚至Javascript. 虽然Python在数据科学和机器学习领域占主导地位,甚至是 ...

  5. 十年沉浮,用Python看创业公司消亡史

    作者 | 叶庭云 来源 | 修炼Python 头图 | 下载于视觉中国 前言 IT桔子有一个新经济死亡公司数据库:https://www.itjuzi.com/deathCompany,统计了2000 ...

  6. 全球Python调查报告:Python 2正在消亡,PyCharm比VS Code更受欢迎

    作者 | 唐小引 题图 | 自东方 IC 出品 | AI科技大本营(ID:rgznai100) 一年一度的 Python 开发者调查报告终于发布了.该报告由 Python 软件基金会和 JetBrai ...

  7. 全球 Python 调查报告:Python 2 正在消亡,PyCharm 比 VS Code 更受欢迎!

    作者 | 唐小引 头图 | CSDN 下载自东方 IC 出品 | CSDN(ID:CSDNnews) 一年一度的 Python 开发者调查报告终于发布了.该报告由 Python 软件基金会和 JetB ...

  8. Python 爬取 6271 家死亡公司数据,一眼看尽十年创业公司消亡史!

    作者 | 朱小五 责编 | 刘静 前段时间老罗和王校长都成为自己的创业公司成了失信人,小五打算上IT桔子看看他们的公司. 意外发现IT桔子出了个死亡公司库(https://www.itjuzi.com ...

  9. Python爬取6271家死亡公司数据,一眼看尽十年创业公司消亡史!

    作者:朱小五 来源:凹凸玩数据 在开始正文前,首先介绍下首届"森麟杯"数据分析大赛,详情可以戳:参与首届"森麟杯"数据分析竞赛,分享千元红包 前段时间老罗和王校 ...

最新文章

  1. Autorun.inf文件(2):改变硬盘分区图标
  2. 《Learning.Python》pdf
  3. PHP中使用redis 执行lua脚本
  4. CentOS 7下sshd防暴力破解及fail2ban的使用方法
  5. HP DL360 G7通过iLO部署系统
  6. 深入理解JVM(6)——JVM性能调优实战
  7. python 学习笔记 while语句(11)
  8. mysql 保存emoji 4字节宽度字符串
  9. 英特尔开源技术中心招收Linux内核高手一名
  10. protues仿真常见问题解决方案
  11. dede-采集替换关键词为空
  12. Windows HTTP服务(WinHTTP)介绍
  13. 【保研】2021南京大学计算机夏令营笔试面试笔记
  14. 系统学习Spring之Spring in action(三)
  15. BUCK/BOOST电路
  16. 敏捷开发系列学习总结(18)——Scrum Master的情景领导力模型
  17. c语言抛物线弓形图像,行列式计算(C#)
  18. 新疆旅游攻略-禾木村
  19. Linux系统下查看dsdt table
  20. H3C的l2tp报错

热门文章

  1. 百所学校寒假时长排行,看看你的学校排多少名~
  2. 程序员的朋友圈应该是这样的。。。
  3. 【每日一算法】重排链表
  4. 操作系统学习:进程、线程与Linux0.12初始化过程概述
  5. Python设计模式-桥接模式
  6. 防火墙产品原理与应用:防火墙产品的技术及实现关于IPV6【寒假】
  7. DeepLabv3:语义图像分割
  8. 利用OpenCV建立视差图像
  9. 整理一下自己手撸的博客
  10. jdbc报Incorrect string value: '\xF0\x9F\xA4\x97' for column