首页 > 编程语言 >jython和python的区别是什么

jython和python的区别是什么

时间:2024-10-19 18:46:53浏览次数:5  
标签:jython java cpython 区别 python 扩展 2.7

我们通常意义上说的python是cpython,也就是完全用C实现的python,它支持C的扩展,不支持java什么的扩展。

jython是完全用jython实现的python,它支持用java扩展,貌似无法用C扩展。

jython用途比较少。主要在两个场景下:

1、操作系统不提供cpython, 只有JAVA可以用。比如sun工作站,或者是某些嵌入式设备。

2、不得不用一些JAVA的包来提供功能。所以只能用jython来调用JAR包。

jython因为有java的即时编译器和编译优化效果,所有速度还是不错的。

不过jython的总体来讲,支持包不够多。不象是cpython 2.7那样,几乎所有的包都支持。极其丰富。不过纯python的包都可以在jython上安装使用。

jython的版本号通常比cpython的要低。不过现在到了2.7也基本上持平了。流行的jython就是2.5,2.7两个版本。

另外jython似乎对于GIL处理的更好些。所以原则上讲,并发性能更好。所以jython的线程应该会比cpython的线程更强大。可以更好的利用到java的性能,把CPU的各个核都用上。

另外内存的使用上,按理jython也可以利用到java的一些优点。cpython通常字典超 过2GB内存就会很慢。也许jython要好些。

总体来讲,性能上还是cpython要更快些。最快的是pypy,其次是cython, 再次是cpython, jython应该在后面。

标签:jython,java,cpython,区别,python,扩展,2.7
From: https://blog.csdn.net/hakesashou/article/details/143082389

相关文章

  • python如何删除目录
    Python实现删除文件夹的三种方式一、os.rmdir(path)删除目录path,path必须是个空目录,否则抛出OSError异常。import osos.rmdir('./test')  # test是一个空的文件夹二、os.removedirs(path) 递归地删除目录。要求每一级目录都为空,才能递归删除全部目录。子目录被......
  • 一文带您了解Python中最难理解的7个概念
    ​Python作为一门流行的编程语言,以其简洁和易读性著称。然而,在学习的过程中,有些概念却让许多开发者感到困惑。那么,哪些是Python中最难理解的概念呢?Python中有哪些概念经常让人挠头?如何才能更好地理解这些看似复杂的知识点?随着Python在数据科学、人工智能等领域的广泛应用,开发者......
  • python异常与模块
    1.了解异常什么是异常呢?当检测到一个错误时,python解释器就无法继续执行了,反而出现了一些错误的提示,这就是所谓的“异常”,也就是我们常说的bug像这样,计算机会告诉你出错的是哪一行代码以及出现错误的问题所在FileNotFoundError:文件未找到Nosuchfileordirectory:文......
  • python 代码实例 --- GUI 登录界面
    importsysfromPyQt5.QtWidgetsimportQApplication,QWidget,QLabel,QLineEdit,QPushButton,QVBoxLayout#type:ignoreclassLoginWindow(QWidget):def__init__(self):super().__init__()self.init_ui()definit_ui(self):......
  • abc_python_day01
    1.编译型VS解释型编译型将代码一次性全部编译成二进制,再执行优点:执行效率高缺点:开发效率低,不可跨平台代表语言:C语言解释型将代码一行一行地编译成二进制,再执行优点:开发效率高,可以跨平台缺点:执行效率低代表语言:python2.变量what:​ 在写代码的过程中,要用到......
  • abort与close有哪些区别
    abort与close的区别是:1、功能不同;2、用法不同;3、影响范围不同;4、错误处理不同。abort函数用于终止程序的执行,一旦调用该函数,程序会立即停止并退出。而close函数用于关闭打开的文件,关闭后该文件不能再被访问或操作。一、abort与close的区别在计算机编程中,abort和close都是用来......
  • 720和1080p区别
    720和1080p内容和尺寸大小没有区别,只是在像素上面有区别。720p的分辨率低于1080p的分辨率。1080P是指分辨率达到1920X1080,720p是指分辨率为1280X720。720P又叫半高清,或者叫标准高清,是高清的最低标准,只有达到了720P这个标准才能叫高清视频。一、720和1080p区别720和1080p内容......
  • Activiti 和 Spring Web Flow 有哪些区别
    Activiti和SpringWebFlow的区别是:1、设计目标不同;2、架构不同;3、用户界面不同;4、扩展性不同。Activiti是一个开源的工作流和业务流程管理系统,用于自动化业务流程和工作流的管理。Activiti提供了一个强大的引擎来执行业务流程,同时还提供了一组用于开发和管理流程的工具。......
  • Access与Excel最重要的区别是什么
    Excel和Access之间的主要区别在于Excel是电子表格程序,而Access是数据库程序。Access使用ID号来存储数据,并且此列表是完全可编辑的,但在Excel工作表中,数据将存储在行和列中。一、Access与Excel最重要的区别Excel和Access之间的主要区别在于Excel是电子表格程......
  • python --- 类介绍
    构造函数__init__特殊变量1、私有变量(private),只有内部可以访问,外部不能访问,私有变量是在名称前以两个下划线开头,如:__name,其实私有变量也不是完全不能被外部访问,不能直接访问是因为python解释器对外把__name变量改成了_类名__name,所仍然可以通过_类名__name来访问__nam......