自1990年代初发布以来,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中被调用。它是Python的“包装器”在C ++之上实现。 Numpy就是这种情况,而Caer的格式与此类似。 Python具有GIL(L)Python变慢的主要原因之一是GIL(GlobalInterpreterLock)的存在-它仅一次允许一个线程执行。尽管这有助于提高单个线程的性能,但它限制了并行性,并且开发人员必须实现多线程处理程序才能提高速度。不是内存密集型任务的最佳选择。当对象超出范围时,Python将自动进行垃圾回收。其目的是消除C和C ++中的内存管理所涉及的许多复杂性。由于指定数据类型缺乏灵活性,因此Python消耗的内存量可能会迅速爆炸。另外,在运行时,Python可能会忽略一些错误,最终成为延迟开发过程的主要诱因。移动计算中牵强的性能随着从台式机到智能手机的迁移,人们显然需要为手机软件构建更强大的语言。尽管Python在计算机和服务器平台上具有良好的性能,但是由于缺乏强大的移动计算处理能力,它在移动开发中经常会失去其优势。近年来,(Python)在这一领域取得了长足的进步,但是这些新添加的库离其强大的竞争对手(如Kotlin,Swift和Java)还很遥远。结论Python不是最好的编程语言,它不能替代C / C ++和Java。它被构建为通用编程语言,强调可读性和以英语为中心的语法。人们可以使用它来快速开发程序和应用程序。像其他语言一样,Python只是一个工具。在某些应用场景中,它是最好的工具。在另一种情况下,可能并非如此。在大多数情况下,它“非常易于使用”。那么,作为一种编程语言,Python会死吗?我不这么认为。它逐渐失去了魅力吗?啊,也许只有一点点,只有一点点。