【问题标题】:Is there an alternative/similar command to Spyder's runfile() or a workaround?是否有 Spyder 的 runfile() 的替代/类似命令或解决方法?
【发布时间】:2021-01-12 00:48:52
【问题描述】:

我想在 spyder 之外运行一个 python 脚本,但直到现在我一直在使用 runfile() 来运行我的脚本。我使用 wdir="my/working/dir" 将工作目录传递给脚本,但现在我想从控制台运行脚本,我不知道该怎么做。

那么有没有办法实现同样的功能呢?

实际上,我想从 Java 程序中运行它...我在 Java 中做了一些事情,我想运行 python 脚本来绘制一些数字。

/root
  /dir1/
  /dir2/
  /src
    /javaclass
      /Class.java
    /python
      /script.py

我希望 script.py 能够“查看”根目录,而不必转到父目录。 runfile() 具有执行此操作的 wdir 参数。 Java 有 -classpath 选项。我想要类似的东西。

【问题讨论】:

  • 这取决于你要在哪个IDE中使用文件
  • 实际上,我想从 Java 程序中运行它...我在 Java 中做了一些事情,我想运行 python 脚本来绘制一些数字。
  • 澄清一下,你想从java程序运行python程序吗?如果是这样,我会将该信息添加到您的问题中,以便人们在尝试帮助您时可以获得更多详细信息!
  • 好的,我编辑了它。我写过我想从控制台/终端运行它,这就是为什么我认为我不必更精确。
  • 我写了一个答案,检查它是否有效。如果没有,我可以检查出了什么问题并在需要时进行更新!

标签: java python spyder


【解决方案1】:

您可以使用 Java 运行时类中的exec()。这是一个例子:

Process p = Runtime.getRuntime().exec("python yourapp.py");

这里有一个tutorial 说明如何使用它。这个link 解释了如何读取输出。

【讨论】:

  • 我认为这行不通.. 我的目录结构是这样的:/root /dir1/ /dir2/ /src /javaclass /Class.java /python /script.py 如果按照你说的执行脚本,脚本的范围不只是 /python 目录吗?我希望脚本“查看”根目录,而不必转到父目录。 runfile() 具有执行此操作的 wdir 参数
  • 编辑了我的问题以正确显示目录
  • 我明白了。不幸的是,您可能必须指定整个路径。但是,我不是 Java 专家,所以可能还有其他解决方案。
  • 您使用的是 Windows、Mac 还是 Linux?
  • 带有 Intellij 的 Windows,但由于我将调用 python 来执行脚本,这有什么不同吗?
猜你喜欢
  • 2018-12-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-03
  • 2021-01-30
  • 1970-01-01
  • 2012-11-08
  • 2010-12-03
相关资源
最近更新 更多