近日又有一篇关于Python的论点文章出现在了互联网上,这位作者在文中说到,Python就要日薄西山了,原因有6个:
运行速度,真的很慢
使用Python完成一项任务所需的时间是使用任何其他语言的2到10倍,主要原因有两个:
一是它属于动态类应用,开发者不需要像在其它语言中那样指定数据类型,这意味着需要使用大量内存,因为程序需要为每个变量保留足够的空间,那么大量的内存使用就会转化为大量的计算时间;
二是它是单线程,一次只能执行一个任务,相比之下,普通的浏览器可以同时运行十几个不同的线程;
动态作用域
Python是动态作用域,这基本上意味着,要评估一个表达式,编译器首先搜索当前语句块,然后再依次搜索所有函数调用,动态作用域的问题在于每个表达式都需要在每个可能的上下文中进行测试。
空格缩进
在Python中,开发者可以使用空格和缩进来表示不同级别的代码,这让代码在视觉效果上更加友好,同时也更易于理解,而其他的编程语言,则会更多地依赖大括号和分号。
Lamda表达式
在Python中,Lambda的使用非常有限,且Lambda只能是Python中的表达式,不能是语句。变量声明和语句段始终做为语句,Lambda却不能使用它们。
移动开发
Python虽然不是不能完成移动端开发,但是Python并不是为移动端应用开发而设计的,即便可以完成基本的任务,但最好的办法仍然是使用一种为移动应用程序开发而创建的语言。
运行时的错误和异常
Python脚本在每次执行时都要进行编译,不仅耗费时间而且需要进行大量测试,而这些,对于开发者来说,是一个极其复杂的过程。
而Python能做到的,Rust、GO、Julia这三种编程语言都能做到,因此判断这三种语言一定有机会取代Python。
大势所趋?
TIOBE官方最新发布了6月的编程语言榜单,位居第二名的 Python 与第一名 C 语言之间的差距正在逐渐缩小,从上个月的 1.51% 缩小到了本月的 0.7%。
对此,TIOBE官方预测,Python即将接管TIOBE榜单榜首的位置,在过往20年间,仅有两种语言达到过TIOBE榜单第一的位置,它们分别是C和Java语言。
因此,在高速的发展趋势下,Python在不久的将来或将超越C语言成为榜单的第一名。
尽管Python有不足之处,但从榜单上看,Python依然处于稳步上升阶段,对此,你怎么看呢?
运行速度,真的很慢
使用Python完成一项任务所需的时间是使用任何其他语言的2到10倍,主要原因有两个:
一是它属于动态类应用,开发者不需要像在其它语言中那样指定数据类型,这意味着需要使用大量内存,因为程序需要为每个变量保留足够的空间,那么大量的内存使用就会转化为大量的计算时间;
二是它是单线程,一次只能执行一个任务,相比之下,普通的浏览器可以同时运行十几个不同的线程;
动态作用域
Python是动态作用域,这基本上意味着,要评估一个表达式,编译器首先搜索当前语句块,然后再依次搜索所有函数调用,动态作用域的问题在于每个表达式都需要在每个可能的上下文中进行测试。
空格缩进
在Python中,开发者可以使用空格和缩进来表示不同级别的代码,这让代码在视觉效果上更加友好,同时也更易于理解,而其他的编程语言,则会更多地依赖大括号和分号。
Lamda表达式
在Python中,Lambda的使用非常有限,且Lambda只能是Python中的表达式,不能是语句。变量声明和语句段始终做为语句,Lambda却不能使用它们。
移动开发
Python虽然不是不能完成移动端开发,但是Python并不是为移动端应用开发而设计的,即便可以完成基本的任务,但最好的办法仍然是使用一种为移动应用程序开发而创建的语言。
运行时的错误和异常
Python脚本在每次执行时都要进行编译,不仅耗费时间而且需要进行大量测试,而这些,对于开发者来说,是一个极其复杂的过程。
而Python能做到的,Rust、GO、Julia这三种编程语言都能做到,因此判断这三种语言一定有机会取代Python。
大势所趋?
TIOBE官方最新发布了6月的编程语言榜单,位居第二名的 Python 与第一名 C 语言之间的差距正在逐渐缩小,从上个月的 1.51% 缩小到了本月的 0.7%。
对此,TIOBE官方预测,Python即将接管TIOBE榜单榜首的位置,在过往20年间,仅有两种语言达到过TIOBE榜单第一的位置,它们分别是C和Java语言。
因此,在高速的发展趋势下,Python在不久的将来或将超越C语言成为榜单的第一名。
尽管Python有不足之处,但从榜单上看,Python依然处于稳步上升阶段,对此,你怎么看呢?