问题标签 [jython]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 我可以检测我的代码是在 cPython 还是 Jython 上运行?
我正在开发一个小型 django 项目,稍后将部署在 servlet 容器中。但是如果我使用 cPython 而不是 Jython,开发会快得多。所以我想做的是在我的 settiings.py 中测试我的代码是否在 cPython 或 Jython 上运行,这样我就可以告诉它使用适当的数据库驱动程序(postgresql_psycopg2 或 doj.backends.zxjdbc.postgresql)。有没有一种简单的方法可以做到这一点?
python - 在 Jython 中使用 inspect.py 时出现问题
我正在使用在 Jython 中开发的应用程序。当我尝试在其中使用 inspect.py 时,它会显示错误消息。
我的代码是这样的
当我使用 python.exe 运行它时,没有问题。但是,在应用程序中使用它会引发以下错误
任何帮助将不胜感激。
谢谢拉贾桑卡尔
java - Jython:将脚本中的 java 类实例化为 Java 对象,而不是 Python 对象
我在使用 Jython 时遇到问题,但我似乎无法在文档中找到解决方案。
基本上我所拥有的是一个已在 Java 中实例化的对象,我想实例化另一个 Java 对象(在 python 脚本中)并将预实例化的 java 对象添加到我在 jython 解释器中实例化的对象中。
例如:
python脚本(有一个绑定为“b_inst”的B实例):
当我尝试运行上述代码时,出现以下异常: TypeError: setB(): expected 2 args; 得到 1
我很确定这是因为 setB() 方法试图在 Python 对象上调用方法,而不是在实际的 java 对象上。基本上,我希望在 jython 脚本中刚刚创建的 AI 实例上对 setB() 的调用是 java 对象,而不是 python 对象。
抱歉,如果这很明显,我已经阅读了教程以及“Java in a Nutshell”和“Core Python Programming”的 Jython 部分,但是这些例子真的很简单,他们没有关于如何做到这两个的例子方式绑定。
jython - 如何为 Jython 交互式解释器会话停用 JLine?
Jython 2.5 默认带有 JLine。
我更愿意将交互式解释器与rlwrap一起使用。如果 JLine 处于活动状态,似乎 rlwrap 不起作用。
在 Scala 中,我会使用rlwrap scala -Xnojline
.
Jython 是否有类似的选项来停用 JLine?
python - Jython 有 GIL 吗?
我确信它没有,但在互联网上寻找明确的答案让我怀疑。例如,我收到了一篇2008 年的帖子,乍一看有点像笑话,但仔细一看似乎是认真的。
编辑: ……仔细一看,原来是个笑话。对困惑感到抱歉。实际上,正如 Nikhil 正确指出的那样,该帖子的评论回答了我的问题。
我们意识到 CPython 在这方面遥遥领先,而且我们缺乏兼容性。经过认真的头脑风暴(和几杯酒),我们决定在 Jython 中引入全局解释器锁可以解决整个问题!
现在,这里的状态如何?sourceforge 上的“差异”页面根本没有提到 GIL。有没有我忽略的官方来源?
另请注意,我知道正在进行的关于 GIL 是否重要的讨论,但我暂时不在乎。
python - Jython 还是 JRuby?
这是一个高层次的概念问题。我有两个用于相同目的的独立代码库,一个内置于 Python,另一个内置于 Ruby。我需要开发一些可以在 JVM 上运行的东西。所以我有两个选择:将 Python 代码转换为 Jython 或将 Ruby 转换为 JRuby。由于我不认识他们中的任何一个,我想知道是否有人可以给我一些指导。喜欢哪一个运行得更快,或者更重要的是哪一个具有可用于轻松代码迁移的工具(.pyc 到 .jar 文件)?
python - 从系统运行的脚本中检索 Raw_Input
我正在使用 OS.System 命令来调用 python 脚本。
例子:
在我调用的脚本中,存在以下命令:
如果我从命令行运行 script.py,我可以毫无问题地输入数据,如果我通过自动化方法运行它,我会得到一个 EOFError。我过去曾读到,发生这种情况是因为系统希望计算机运行它,因此永远无法以这种方式接收输入数据。
所以问题是如何让 python 在以自动化方式运行时等待用户输入?
python - 快速的python/jython IPC?
我要做的就是通过套接字进行一些 RPC 调用。我有一台运行 jython 2.5 的后端服务器。我需要从在 CPython 上运行 Django 的前端服务器进行一些调用。我一直在努力争取任何形式的 IPC。
我尝试过的事情清单:
- Apache Thrift没有任何实际版本,只有快照。我想用一些稳定的东西。
- JSON-RPC很有趣,它应该能够在套接字上运行,但实际上大多数实现似乎只能在 HTTP 上运行。HTTP 开销正是我想要避免的。
- Protocol Buffers实际上只是一个序列化协议。从我收集的内容来看,protobuf 为 RPC 提供了接口生成,但它只是接口。实际上编写所有连接代码取决于用户。如果我将无法使用套接字,我将只使用 JSON 进行序列化。它更简单,更快。
- Pyro无法将 Jython 作为服务器正常工作。某种套接字超时问题。我已经向邮件列表发送了一条消息。
- pysage是的,用于消息传递!只有它需要 python 2.6 或处理模块(已编译扩展)。Jython 是 2.5 版,不允许编译扩展。
- Candygram是 pysage 的一个有趣的替代品,但据我所知,它没有维护。我什至没有用 Jython 尝试过。有什么经验吗?
- Twisted Perspective Broker Twisted 不适用于 Jython。
我知道用 XML-RPC 做这件事会很容易,这让我更加暴躁。我想避免 HTTP 的开销,但同时我真的不想用套接字来实现我自己的协议。如果我这样做,我会做错。
有任何想法吗?我可能会哭大约 20 分钟,然后就使用 XML-RPC。
java - 在 Java 中使用 Python
可能重复:
Java Python 集成
我有一个用 100% Java 编写的大型现有代码库,但我想将 Python 用于其中的一些新部分。我需要做一些文本和语言处理,我更愿意使用 Python 和像NLTK这样的库来做这件事。
我知道 Jython 项目,但看起来这代表了一种在 Python 中使用 Java 及其库的方式,而不是反过来——我错了吗?
如果不是,那么在 Java 和 Python 之间进行接口的最佳方法是什么,这样(理想情况下)我可以在 Python 中调用一个方法并将结果返回给 Java?
python - 在 Python 中拦截切片操作
我想模仿一个普通的 python 列表,除了通过切片添加或删除元素时,我想“保存”列表。这可能吗?这是我的尝试,但它永远不会打印“保存”。
这确实适用于其他方法,例如append
and extend
,但不适用于切片操作。
编辑:真正的问题是我使用的是 Jython 而不是 Python 并且忘记了它。对问题的评论是正确的。这段代码在 Python (2.6) 中运行良好。但是,代码和答案都可以在 Jython 中使用。