java - Python 能做什么而 Jython 不能?

标签 java python jython language-features

我需要一个灵活的框架,并想尝试在它的不同位置注入(inject)一些代码,只是为了动态地改变行为。

因为它是一个 Java 项目,基本上我仅限于接口(interface)和玩弄那些背后的实现,我想我可以让 Jython 运行一下,看看它能带来什么。

我的意思是,eval() 是一个强大的函数,我可以将代码添加为字符串并对其进行求值,至少在 Python 中是这样,因为它基本上可以编译为 Java,所以出现了这个问题...

与 Python 相比,Jython 有哪些限制?在 Jython 中我不能在 Python 中做什么?

最佳答案

正如之前的帖子所述,您确实希望将 CPython 与 Jython 进行比较。如前所述,Jython 的稳定版本为 2.5.3,alpha 版本为 2.7。这意味着 Jython 缺少某些特性。例如,有序字典、计数器和命名元组都被添加到 Collections 中。从 2.5 开始打包。对于 Jython,您不能使用许多第 3 方 Python 库,例如 NumPy、SciPy、GeoDjango、Lxml 或任何使用 C 扩展的东西。

另一方面,Jython 有一些使用 CPython 无法获得的好处。使用 Jython,您可以 deploy Django on a standard Java server (例如 Tomcat、WebLogic 等)。您可以从 Jython 代码调用现有的 Java 类。

关于java - Python 能做什么而 Jython 不能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13035598/

相关文章:

java - 使用 Android java 应用程序的 Cisco 交换机的 Telnet 客户端

java - 设置 AppEngine 时出现 DataNucleus Enhancer 错误

java - Type ChangeListener 不带参数

python - Django 1.7 将以编程方式添加组的代码放在哪里?

python - 模块范围内的全局关键字

Java访问桥损坏的dll

python - 为什么我复制的两个日期字段不相同?

python - python PIL 可以处理原始图像数据吗?

java - 终极版 : How do I get Jython to use Python modules stored in Lib within its own jar file when running in Hadoop?

java - Eclipse 中的 Jython 项目找不到 xml 模块,但在相同的项目中工作