Python这门语言从一开始就是一个玩具语言,它不是给正经程序员用的东西。程序员
Python运行效率很低,这就致使Python中不少库底层其实是C++。不少时候,本身想方设法优化的结果就不如用C++暴力效果好。Numpy成了Python的中流砥柱,凡事要想高效,就往Numpy上靠。这就致使一个库劫持了一个语言。算法
用Python的时候,你是没法进行复杂度分析的,Python封装得过于严密,空间时间彻底脱离了程序员的控制,变得奇形怪状。两个都是O(n)的操做,效率可能差别很大,缘由可能很奇葩。数组
没有括号,粘贴代码时老是当心翼翼。代码略微写长些,就忘记了缩进的层次,须要按几回退格键才能退出上面的多重循环,这个任务须要一把游标卡尺,或者须要一个很大的屏幕。优化
线程没法充分利用多核,进程又过于沉重甚至须要复制不少数据。线程
许多高妙的算法都是基于数组下标或者指针的来回跳转,C系列语言提供了灵活的for语句,能够很直观的表达。Python的for却很弱,只能使用while循环,这就致使Python写起来像汇编语言同样,代码并不简洁。指针
Python虽然提供了灵活的内置的字典、列表、元组,这些基础类型能够取代Java中的许多对象,这是Python的优点。
当拿到一份Python代码时,弱类型让人难以理解。而Java中的冗长却出处互相印证,一眼看去立马明白,让人颇有成就感。
弱类型致使IDE没法提供足够强大的代码提示。
弱类型致使程序员不太敢重构,语言影响思惟。对象