java和python之间有可比性么 30
8个回答
展开全部
展开全部
关于可比性要看它们各自的适用场景,就使用语言做开发而言没必要比较,用适合自己的,适合业务需求的,高效为原则,找出最适合它们的场景使用即可。
具体的区别与联系如下:
python原则上是一种脚本语言。java是一种开发语言,也是一个平台。
java 是高级语言(High-level programming language),Python 是非常高级语言(very-high-level language [1])
Java和Python的区别是静态类型和动态类型,静态类型必须先声明再使用,动态则不需要声明。
JAVA 要编译后才能运行,Python 直接解释运行。
JAVA 引入包后,调用包的方式比 Python 要简洁些,而 Python 直接 import 包则是显式的,不会出现同名模块/类冲突的问题,如果使用“from module import function”的话,在使用的时候也很简洁却要求必须有针对性地引用函数。
JAVA 里的块用大括号对包括,Python 以冒号 + 四个空格缩进表示。
JAVA 的类型要声明,Python 的类型不需要。
JAVA 基本上是类/结构操作,也就是面向对象处理,Python 可以以独立的函数模块来处理逻辑而不需要放到类中。
JAVA 每行语句以分号结束,Python 可以不写分号。
JAVA 中的字符串以双引号括起来,Python 中单引号或双引号都可以(与 JavaScript 一样)。
具体的区别与联系如下:
python原则上是一种脚本语言。java是一种开发语言,也是一个平台。
java 是高级语言(High-level programming language),Python 是非常高级语言(very-high-level language [1])
Java和Python的区别是静态类型和动态类型,静态类型必须先声明再使用,动态则不需要声明。
JAVA 要编译后才能运行,Python 直接解释运行。
JAVA 引入包后,调用包的方式比 Python 要简洁些,而 Python 直接 import 包则是显式的,不会出现同名模块/类冲突的问题,如果使用“from module import function”的话,在使用的时候也很简洁却要求必须有针对性地引用函数。
JAVA 里的块用大括号对包括,Python 以冒号 + 四个空格缩进表示。
JAVA 的类型要声明,Python 的类型不需要。
JAVA 基本上是类/结构操作,也就是面向对象处理,Python 可以以独立的函数模块来处理逻辑而不需要放到类中。
JAVA 每行语句以分号结束,Python 可以不写分号。
JAVA 中的字符串以双引号括起来,Python 中单引号或双引号都可以(与 JavaScript 一样)。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Java PK Python
Java是一种面向对象语言,具有许多程序员熟悉的类似于C / C ++的语法。其吸引力和价值所在是其具有的可移植性和相对效率。Java作为一种编译语言,执行模式与解释性语言(比如Python和Perl)相比更加以机器为中心。Java不仅仅是一种语言和库:它也是一个虚拟机,一个生态系统。Java虚拟机(JVM)是运行Java代码的理想化和便携式平台。程序员不必担心硬件细节,并且不必将代码移植到新平台,Java承诺“一次写入,到处编译(WORA)”。同时,JVM语言有很多,比如Groovy、Clojure、Scala、Python或者Jython。
Python起源于一种脚本语言,它的语法体现了一种可读性的理念,具有简单而规则的界限,鼓励简洁和一致的代码布局。Python的参考实现(以C编写,被称为CPython)在许多平台上可用,并且是众多实现中最常用的。Python的动态类型有助于代码简化和组合,是许多平台的解释性语言,成为众多程序员编程首选的便携式选项。Python是围绕可扩展对象模型构建的通用语言。其面向对象的核心并不意味着对象定向是开发人员在用Python编程时最常用的方式。它支持程序化编程,模块化编程和部分函数式编程。
Java PK Python之一:速度
在网络I / O成本或数据库访问占主导地位的情况下,语言的具体效率不如技术选择和设计方面的整体效率重要。Java和Python都不适合高性能计算,但在性能上,Java还是略胜一筹。虽然一些Python实现(如PyPy)可以针对性能进行微调,但原始的便携式性能Python不占优势。
Java的效率优势体现在虚拟机执行。程序执行时,JVM可以将字节码转换为本地机器码。这种即时(JIT)编译让Java的性能略胜Python。Java从其第一个公开版本起就支持并发,而Python则是按序执行。在当前多核处理的趋势下,Java代码更易实现。
Java PK Python之二:实用敏捷性
漫长的发展中,Java和Python都受益匪浅。Java通常被认为与敏捷开发及其社区有更密切的联系。Python在敏捷领域一直存在,并且受到诸多原因的影响而更加普及,包括DevOps运动的兴起。
Java比Python具备更一致的重构支持,一方面,它的静态类型使自动化重构更可预测和可靠,另一方面是Java开发中IDE(例如IntelliJ,Eclipse和NetBeans)的普及。Python的动态类型在代码中鼓励使用不同类型的敏捷性,其重点在于简洁和流动。然而,Pythonic文化倾向于多种编辑器,而不是基于IDE,这意味着对强自动重构的支持较低。
JUnit的早期知名度及其与测试驱动开发(TDD)的关联意味着,在所有语言中,Java可能是唯一一个单元测试受到程序员一致欢迎的语言。在IDE中自动包含JUnit已经在很大程度上对此有所帮助了。
Python的脚本起源和在其标准库中包含测试功能意味着Python对现代开发中自动化测试相当重视,尽管它更有可能是集成而不是单元测试。在Java世界中,传统Java代码库可以通过采用另一种JVM语言来加以改善,例如使用Groovy或Clojure进行自动化测试,或者完全跨越Java Universe,例如使用Python来处理系统方面操作 。
Java PK Python之三:架构
围绕Python Web框架构思的软件体系架构与Java的不会相差甚远。Java和Python都有各自的开源社区,并有很多程序员一直在源源不断的贡献源代码,这些代码已经解决了常见或者不常见的问题,事实上,这两种语言都因开源社区而受益匪浅。
Java PK Python之四:历史遗留问题
历史遗留问题在其技术上具有惯性。当企业选择了一种编程语言,就很难再次更换。例如,更多的企业项目后端可能会使用Java代码来扩展其功能,也许可以迁移到更新版本的语言,或者通过其他JVM语言(如Scala和Groovy)添加新功能。Java在企业中的历史比Python更久,这也是招聘Java程序员的企业比招Python更多的原因。
Java PK Python之五:市场普及度
Java和Python都是TIOBE编程语言排行榜上的前十名,并且是稳稳地占据前十名。 但Java一直比Python更受欢迎,但是Python的受欢迎程度已经超过了两种编程语言:Perl和Ruby。
此外,两种语言在教育中都具有强大的立足点,但Java比Python更常用于大学课程中。
结论
Java和Python都是富有活力的编程语言,这两种语言与开放性相关联,所以公司,团队和程序员在做出决定时最好保持开放的态度。
Java是一种面向对象语言,具有许多程序员熟悉的类似于C / C ++的语法。其吸引力和价值所在是其具有的可移植性和相对效率。Java作为一种编译语言,执行模式与解释性语言(比如Python和Perl)相比更加以机器为中心。Java不仅仅是一种语言和库:它也是一个虚拟机,一个生态系统。Java虚拟机(JVM)是运行Java代码的理想化和便携式平台。程序员不必担心硬件细节,并且不必将代码移植到新平台,Java承诺“一次写入,到处编译(WORA)”。同时,JVM语言有很多,比如Groovy、Clojure、Scala、Python或者Jython。
Python起源于一种脚本语言,它的语法体现了一种可读性的理念,具有简单而规则的界限,鼓励简洁和一致的代码布局。Python的参考实现(以C编写,被称为CPython)在许多平台上可用,并且是众多实现中最常用的。Python的动态类型有助于代码简化和组合,是许多平台的解释性语言,成为众多程序员编程首选的便携式选项。Python是围绕可扩展对象模型构建的通用语言。其面向对象的核心并不意味着对象定向是开发人员在用Python编程时最常用的方式。它支持程序化编程,模块化编程和部分函数式编程。
Java PK Python之一:速度
在网络I / O成本或数据库访问占主导地位的情况下,语言的具体效率不如技术选择和设计方面的整体效率重要。Java和Python都不适合高性能计算,但在性能上,Java还是略胜一筹。虽然一些Python实现(如PyPy)可以针对性能进行微调,但原始的便携式性能Python不占优势。
Java的效率优势体现在虚拟机执行。程序执行时,JVM可以将字节码转换为本地机器码。这种即时(JIT)编译让Java的性能略胜Python。Java从其第一个公开版本起就支持并发,而Python则是按序执行。在当前多核处理的趋势下,Java代码更易实现。
Java PK Python之二:实用敏捷性
漫长的发展中,Java和Python都受益匪浅。Java通常被认为与敏捷开发及其社区有更密切的联系。Python在敏捷领域一直存在,并且受到诸多原因的影响而更加普及,包括DevOps运动的兴起。
Java比Python具备更一致的重构支持,一方面,它的静态类型使自动化重构更可预测和可靠,另一方面是Java开发中IDE(例如IntelliJ,Eclipse和NetBeans)的普及。Python的动态类型在代码中鼓励使用不同类型的敏捷性,其重点在于简洁和流动。然而,Pythonic文化倾向于多种编辑器,而不是基于IDE,这意味着对强自动重构的支持较低。
JUnit的早期知名度及其与测试驱动开发(TDD)的关联意味着,在所有语言中,Java可能是唯一一个单元测试受到程序员一致欢迎的语言。在IDE中自动包含JUnit已经在很大程度上对此有所帮助了。
Python的脚本起源和在其标准库中包含测试功能意味着Python对现代开发中自动化测试相当重视,尽管它更有可能是集成而不是单元测试。在Java世界中,传统Java代码库可以通过采用另一种JVM语言来加以改善,例如使用Groovy或Clojure进行自动化测试,或者完全跨越Java Universe,例如使用Python来处理系统方面操作 。
Java PK Python之三:架构
围绕Python Web框架构思的软件体系架构与Java的不会相差甚远。Java和Python都有各自的开源社区,并有很多程序员一直在源源不断的贡献源代码,这些代码已经解决了常见或者不常见的问题,事实上,这两种语言都因开源社区而受益匪浅。
Java PK Python之四:历史遗留问题
历史遗留问题在其技术上具有惯性。当企业选择了一种编程语言,就很难再次更换。例如,更多的企业项目后端可能会使用Java代码来扩展其功能,也许可以迁移到更新版本的语言,或者通过其他JVM语言(如Scala和Groovy)添加新功能。Java在企业中的历史比Python更久,这也是招聘Java程序员的企业比招Python更多的原因。
Java PK Python之五:市场普及度
Java和Python都是TIOBE编程语言排行榜上的前十名,并且是稳稳地占据前十名。 但Java一直比Python更受欢迎,但是Python的受欢迎程度已经超过了两种编程语言:Perl和Ruby。
此外,两种语言在教育中都具有强大的立足点,但Java比Python更常用于大学课程中。
结论
Java和Python都是富有活力的编程语言,这两种语言与开放性相关联,所以公司,团队和程序员在做出决定时最好保持开放的态度。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-08-16
展开全部
- -!两种语言都比较的NB
Python是一种动态语言,最大的特点是执行时编译。最大的长处是库非常的多而且全,和C/C++结合方便。Python是一种弱类型语言,写程序非常的方便,比如说100000000000000*100000000绝对不会给你算溢出了(当然速度不会快哪里去哈)。呵呵,我学习的时候就拿兔子数列做的实验,印象很深刻。Python语言里有很多很奇异的思想,用起来非常的方便,比如说切片。
JAVA则是换一种思想,首先将代码编译为一种中间层,然后在运行时再次编译。最大的长处是跨平台,代码具有一定的可保护性。JAVA是强类型语言。在integer上计算一下10万乘10万绝对郁闷。语法形式和C++比较接近。和C++比较个人认为最大的特色是RTTI。
Python是一种动态语言,最大的特点是执行时编译。最大的长处是库非常的多而且全,和C/C++结合方便。Python是一种弱类型语言,写程序非常的方便,比如说100000000000000*100000000绝对不会给你算溢出了(当然速度不会快哪里去哈)。呵呵,我学习的时候就拿兔子数列做的实验,印象很深刻。Python语言里有很多很奇异的思想,用起来非常的方便,比如说切片。
JAVA则是换一种思想,首先将代码编译为一种中间层,然后在运行时再次编译。最大的长处是跨平台,代码具有一定的可保护性。JAVA是强类型语言。在integer上计算一下10万乘10万绝对郁闷。语法形式和C++比较接近。和C++比较个人认为最大的特色是RTTI。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Python在执行时,首先会将.py文件中的源代码编译成Python的byte code(字节码),然后再由Python Virtual Machine(Python 虚拟机)来执行这些编译好的byte code。这种机制的基本思想跟Java,.NET是一致的。然而,Python Virtual Machine与Java或.NET的Virtual Machine不同的是,Python的Virtual Machine是一种更高级的Virtual Machine。这里的高级并不是通常意义上的高级,不是说Python的Virtual Machine比Java或.NET的功能更强大,而是说和Java 或.NET相比,Python的Virtual Machine距离真实机器的距离更远。或者可以这么说,Python的Virtual Machine是一种抽象层次更高的Virtual Machine。
现在有一门语言是Jython=java+python
python可以非常灵活高校的调用c/c++ ,而且语言精简,而JAVA的跨平台性还有高扩展性是现在开发的主流,这两门语言面对的使用群体不同
现在有一门语言是Jython=java+python
python可以非常灵活高校的调用c/c++ ,而且语言精简,而JAVA的跨平台性还有高扩展性是现在开发的主流,这两门语言面对的使用群体不同
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询