如何从 python 脚本调用 *.jsl 脚本

Posted

技术标签:

【中文标题】如何从 python 脚本调用 *.jsl 脚本【英文标题】:How to call a *.jsl script from python script 【发布时间】:2013-07-29 18:27:15 【问题描述】:

我有一个 python 脚本正在运行。我想在我正在运行的 python 脚本中调用 *.jsl 脚本,并想在 python 中使用它的输出。我可以知道我该怎么做吗?

【问题讨论】:

什么是 jmp 脚本? (您使用的标签似乎完全适用于 ASM 指令......)(不管它是什么,您可能想查看 subprocess 模块)。 @Wooble:谢谢你的纠正 【参考方案1】:

你应该看看JMP automation guide。

您可以使用win32com 接口从 Python 自动化 JMP,但不幸的是,该接口有很多错误且不完整。我编写了一个自定义代码库来解决这些问题,主要是因为我的工作需要我广泛使用 JMP,而它的内置 jsl 编程语言在很多方面都很糟糕。

【讨论】:

【参考方案2】:

确保 jmp.exe 在您的系统环境中可用,这样如果您在命令行中键入“jmp.exe”,它将启动 jmp。然后准备好你的 *.jsl。 使用 python procees 运行此命令“jmp.exe *.jsl”,这将打开 jmp 并运行 *.jsl 脚本,然后您可以将您从 jmp 生成的任何内容导入回 python。

【讨论】:

【参考方案3】:

我在 Mac 上,这行得通

import os
os.system('open /Applications/JMP\ Pro\ 13.app/Contents/MacOS/JMP /path/filename.jsl')

路径/可执行文件和路径/名称之间有一个空格。

在你的 JSL 中确保第一行只有 //! 这将使脚本在打开时自动运行。 另外,使用quit(); 作为最后一行,这样打开的 JMP 实例就会关闭。

使用操作系统参考此链接:How can I launch an instance of an application using Python?

【讨论】:

以上是关于如何从 python 脚本调用 *.jsl 脚本的主要内容,如果未能解决你的问题,请参考以下文章

使用 CType 时检测从 Windows DLL 调用 Python 脚本

如何从 python 代码调用 shell 脚本?

如何从另一个 python 脚本调用和显示 PYQT UI 脚本?

如何从 C# 中的 Python 脚本调用特定方法?

如何从 python 脚本调用 pip 并使其在本地安装到该脚本? [复制]

如何从 python 脚本成功调用 gsutil rsync?