JMP® 有一個 jpip 包裝器,它只是pip的薄包裝器,因為完全支援此類功能,例如透過需求檔案安裝套件。下面是兩個腳本,一個是 JSL,一個是 Python。每個都使用 JSL Pick File()對話框讓使用者選擇需求文件,然後將路徑傳遞到jmputis.jpip()來處理需求文件。顯示的大部分程式碼都利用檔案選擇對話框。使用硬編碼路徑,可以用兩行 Python 程式碼完成:
從 jmputils 導入 jpip
jpip('安裝', '-r _path_to_requirements.txt')
只需一個小技巧即可實現這項工作。
jmputils.jpip()函數只是 pip 之上的包裝器,以確保套件安裝在隔離的 JMP 環境中。安裝和使用需求檔案很簡單。由於包裝器的原因,這需要以特定的方式表達。 pip 指令的「-r」後面必須緊跟著檔案名稱。為了確保這一點,它應該與jpip的 'package' 字串參數一起放置。以下程式碼應適用於 JMP 18.0 及更高版本。這些範例將位於 JMP 19 的腳本索引中。
來自JSL
Names Default To Here(1);
src_path = Pick File(
"Select requirements.txt File",
"$DOCUMENTS",
{"TXT Files|txt", "All Files|*"},
0,
0,
"requirements.txt"
);
If( Host is("Windows"),
src_path = Convert File Path( src_path, windows )
);
Python Send(src_path);
Python Submit("\[
from jmputils import jpip
jpip('install', f'-r {src_path}')
]\");
來自Python
import jmp
from jmputils import jpip
jmp.run_jsl('''
Names Default To Here( 1 );
src_path = Pick File(
"Select requirements.txt File",
"$DOCUMENTS",
{"TXT Files|txt", "All Files|*"},
0,
0,
"requirements.txt"
);
show(src_path);
If( Host is("Windows"),
src_path = Convert File Path( src_path, windows )
);
show(src_path);
Python Send(src_path);
''')
jpip('install', f'-r {src_path}')