这篇文章主要介绍“Python为什么正在慢慢失去对码农的吸引力”,在日常操作中,相信很多人在Python为什么正在慢慢失去对码农的吸引力问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python为什么正在慢慢失去对码农的吸引力”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
江海ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:028-86922220(备注:SSL证书合作)期待与您的合作!
自从1990年代初发布Python之后,它就引起了很多炒作。 当然,编程社区至少花了20年的时间才意识到它的存在,但是自那时以来,它的普及程度已经远远超过了C,C#,Java甚至Javascript。
尽管Python在数据科学和机器学习领域以及某些程度上在科学和数学计算领域占据着主导地位,但与Julia,Swift和Java等较新的语言相比,它确实有其缺点。
是什么使Python如此流行?
Python迅猛发展的主要推动力之一是它的易学性和强大的实用性,这使其对初学者以及因诸如C之类的语言的语法难以理解而回避编程的人非常有吸引力。 / C ++。
该语言从根本上广泛强调代码的可读性。 凭借其简洁明了的语法,它使开发人员无需编写大量的行代码即可表达想法和概念(在C或Java等低级语言中就是这种情况)。 Python非常简单,可以与其他编程语言无缝集成(例如将CPU密集型任务卸载到C / C ++),这对多语言开发人员来说是一个额外的好处。
Python多功能性的另一个原因是企业(包括FAANG)以及无数小型企业对其的大量使用。 如今,您将找到一个Python软件包,几乎可以想到的所有内容-对于科学计算,您已经拥有Numpy,Sklearn(用于机器学习)和Caer(用于计算机视觉)。
Python的弱点
很慢,很慢
这可能很容易。 速度通常被认为是开发人员关注的重点之一,并且可能会持续不可预见的时间。
Python变慢的主要原因之一,实际上可以归结为2 – Python被解释为与编译相反,最终导致执行时间变慢; 以及它是动态类型的(在执行过程中,Python会自动推断变量的数据类型)。
实际上,这种" Python慢"的观点在初学者中往往起很大作用。 对,是真的。 但只是部分。
以TensorFlow为例,这是Python提供的机器学习库。 这些库实际上是用C ++编写的,并且可以在Python中使用,有点像是围绕C ++实现的Python"包装器"。 Numpy甚至在一定程度上也是如此。
它有一个GIL(l)
Python速度缓慢的主要原因之一是存在GIL(全局解释器锁定),该功能一次只能执行一个线程。 虽然这可以提高单线程的性能,但是它限制了并行性,在这种并行性中,开发人员必须实现多处理程序而不是多线程程序,以提高速度。
对于内存密集型任务不是最好的
当对象超出范围时,Python会自动进行垃圾回收。 它旨在消除C和C ++涉及的很多内存管理复杂性。 由于指定数据类型的灵活性(或缺乏灵活性),Python消耗的内存量可能会迅速爆炸。
此外,Python可能不会注意到的一些错误可能会在运行时弹出,最终使开发过程变慢了很多。
移动计算的弱势存在
从台式机到智能手机的巨大转变,很明显,需要更强大的语言来构建用于手机的软件。 尽管Python在台式机和服务器平台上具有相当大的代表性,但是由于缺乏强大的移动计算处理能力,Python往往会在移动开发方面失去优势。
近年来,在这一领域取得了许多进步,但是这些新添加的库甚至与强大的竞争对手(如Kotlin,Swift和Java)并不接近。
其他语言的兴起
最近,Julia,Rust和Swift等较新的语言突然出现,它们借鉴了Python,C / C ++和Java的许多优秀设计概念-Rust几乎保证了运行时的内存安全性和并发性,并提供一流的 与WebAssembly的互操作性; Swift对LLVM编译器工具链的支持几乎与C一样快,而Julia为I / O密集型任务提供了异步I / O,并且速度非常快。
到此,关于“Python为什么正在慢慢失去对码农的吸引力”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!