通过Jython使用.pyc文件

时间:2011-07-07 08:34:52

标签: java python jython pyc

我正在为Python工具构建Web界面。它是使用J2EE(Spring)设计的。

在这个过程中,我需要调用Python函数,因此我也使用Jython。

但是对于某些模块,我没有Python源文件,我只有.pyc个文件,还有一个列出该文件方法的文档。我需要知道如何使用jython在.pyc文件中调用这些函数。

我曾尝试对Python文件进行反编译,但由于它们已经符合Python 2.7,我无法找到反编译器来完成这项工作

2 个答案:

答案 0 :(得分:3)

'编译'的python代码'.pyc'文件是特定于实现的。甚至CPython(标准的Python实现)也无法导入由不同版本的CPython生成的.pyc文件。而且不应该。所以,如果Jython能够运行任何CPython版本创建的.pyc文件,我会感到惊讶。

'。pyc'文件与Java字节码(设计为可移植的)不同。

反编译似乎是唯一的方法。我认为有一些.pyc反编译器可用,它们应该能够生成可以由Jython运行的Python代码。

答案 1 :(得分:2)

实际上,jython确实有运行cpython生成的pyc文件的实验性支持:jython 2.5内置了一个cpython字节码解释器。

详细了解如何在此处使用

http://www.jython.org/jythonbook/en/1.0/ModulesPackages.html?highlight=pycimport#compilation