区别如下:
1、python虚拟机没有java强,java虚拟机是java的核心,python的核心是可以很方便地使用c语言函数或c++库。
2、python是全动态性的,可以在运行时自己修改自己的代码,java只能通过变通方法实现。python的变量是动态的,而java的变量是静态的,需要事先声明,所以java ide的代码提示功能优于python ide。
3、python有好多程序用的是面向过程设计方法,很多概念从c语言过来的,class在python中是后加入的,而java是为了实现没有指针的c++(当年com组件用的引用记数,java用的虚拟机),主要采用面向对象的设计方法,很多概念是oop的概念。面向过程,相对简洁直观,但容易设计出面条程序,面向对象,相对抽象优雅,但容易过度抽象。
4、Python语法更简洁
5、Python中的GIL-直被不少开发者所诟病, GIL 是指全局解释锁,Python的多线程在多CPU条件下并不能并行的运行,而只能是每个线程运行的时候首先需要获得解释器的访问权限才可以执行,其他线程只能处于等待的过程,不过GIL 并不是Python的致命缺点,否则现在没人会用的,因为有很多方案是协程,或者是用多进程机制来弥补。而Java支持真正的多线程并发操作,能很好的控制资源的的共享。