如何从 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 脚本调用和显示 PYQT UI 脚本?