我正在一个java类中运行一个python脚本,如下所示:
PythonInterpreter interp = new PythonInterpreter();
PythonInterpreter.initialize(System.getProperties(), System.getProperties(), new String[0]);
interp.execfile("C:\\Users\\user1\\workspace\\Projectx\\script.py");
问题在于脚本。py通常采用如下命令行参数:
Pythonscript.py-i C:/diretory/path-o C:/目录/路径
有可能在Java中通过PythonTeperter传递这些参数吗?
更新:
感谢Juned Ahsan我的代码现在是这样的:
String[] args = {"-i " + lawlinkerIfolder.toString() + " -o " + lawlinkerOfolder.toString()};
PythonInterpreter interp = new PythonInterpreter();
PythonInterpreter.initialize(System.getProperties(), System.getProperties(), args);
interp.execfile("C:\\Users\\user1\\workspace\\Projectx\\script.py");
但是脚本仍然没有得到任何参数。
我这样用对了吗?
我有同样的问题,发现可以通过使用“interned”字符串解决,即。,
for (int i = 0; i args.length; ++i) {
args[i] = args[i].intern();
}
我正在使用Jython2.5.3。希望这会有所帮助。
以下调用中的最后一个参数用于命令行参数:
PythonInterpreter.initialize(System.getProperties(), System.getProperties(), new String[0]);
来自PythronInterpreter javadocs:
初始化
公共静态void初始化(属性预属性、属性后属性、字符串[]argv)
初始化Jython运行时。在创建任何其他Python对象(包括PythonInterpreter)之前,只能调用一次。参数:预属性-一组属性。通常是系统。使用getProperties()。预属性覆盖注册表文件中的属性。后属性-另一组属性。类似python的值。回家,python。可以将注册表文件中的路径和所有其他值添加到此属性集。后特性覆盖系统特性和注册表特性。argv-命令行参数,分配给sys.argv。
我希望能够将参数从docker-compose file>dockerfile传递到运行接受参数的python脚本的cmd/entrypoint 请协助,也许我在这里遗漏了什么或者只是没有正确理解。 谢谢!
好吧,所以这是已经问过的问题,但答案似乎没有多大帮助。我能够使用jython和该问题中发布的答案运行python脚本,但我无法传递变量...当我运行程序时,错误说没有像arg1 arg2和arg3这样的变量...我做错了什么? 这是python脚本 现在错误说arg1 arg2和arg3未声明
我试图使用jython在java中执行python脚本。重要的是,我需要使用jython将命令行参数传递给脚本,例如myscript。py arg1 arg2 arg3。这里有一个类似的问题:将参数传递到Java中的Python脚本 这没有得到完全的回答(所有解决方案都不起作用)。 我的代码现在看起来像这样: 然而,这似乎没有向python脚本传递任何参数。对如何正确地做这件事有什么建议吗?这一定
这里是HTML文件,在脚本部分,我发出了一个ajax请求,将一些字符串传递给python函数。 在中,我设置了python脚本的路径。Python文件,我希望在该文件中从JS获取所请求的数据并将其打印出来。 注意:这里我没有使用任何框架。只是纯HTML、JS和Python文件。
问题内容: 我是Python和Eclipse的新手,在理解如何将命令行参数传递给在Eclipse(Pydev)中运行的脚本时遇到一些困难。 以下链接说明了如何将命令行参数传递给python脚本。 要将命令行参数传递给模块(来自上面链接的代码), 我需要输入python控制台 要么 如何在Eclipse(Pydev)中将相同的参数传递给Python脚本? 谢谢 ! 问题答案: 如果您希望程序以交互方
问题内容: 我试图运行在运行时调用shell脚本的Java代码。 当我在终端中运行脚本时,我正在将参数传递给脚本 码: Java代码: 如何在Java代码中为脚本传递参数? 问题答案: 在Java的最新版本中创建进程的首选方法是使用类,这使得此操作非常简单: 但是,如果您确实出于某种原因想要/需要使用该方法,则可以使用该方法的重载版本,这些版本允许显式指定参数: