關於 Python 和 JMP 互動問題各位專家大家好
我在JMP 16.2中學習Python和JMP互動有兩個問題
問題一:
Names Default To Here( 1 );
Python Init( Echo( 1));
z ="python test";
Python Send( z,P );
Python Submit( "print(P)" );
Python Submit( "print(z)" );
它的輸出上下文:
/*********/
列印(頁)
/*********/
/*********/
列印(z)
/*********/
蟒蛇測試
0
這意味著Python沒有收到等於z的P參數,那麼有什麼錯誤嗎?
問題2:
Names Default To Here( 1 );
Python Init( Echo( 1));
x1 = [1, 2, 3];
Python Send( x1, P_x );
Python Submit( "print(P_x)" );
Python Submit( "print(x1)" );
x2 = Python Get( x1 );
Show( x1, x2 );
但它是輸出上下文:
/*********/
列印(P_x)
/*********/
/*********/
列印(x1)
/*********/
x1 = [1, 2, 3];
x2 = .;
除了Q1之外,這段程式碼甚至無法正常輸出Log中的列表值?這是 Python 和 JMP 之間的列表值傳輸的錯誤嗎?
進階統計建模自動化和腳本編寫消費者與市場研究資料存取數據探索和視覺化大規模客製化品質和工藝工程Re: 關於 Python 和 JMP 的交互問題歡迎來到社區討論論壇。
關於你的第一個問題,我沒有看到任何錯誤。當您向 Python 發送標量值時,其中之一 P 在 JMP 中不存在,它無法向 Python 傳遞任何內容。因此,Python 不顯示任何值:
print(P)
沒有什麼可顯示的。
關於你的Q2。在 Windows 11 電腦上使用 JMP 16.2,我收到以下輸出
/**********/
print(P_x)
/**********/
/**********/
print(x1)
/**********/
[[1.]
[2.]
[3.]]
x1 = [1, 2, 3];
x2 = [1, 2, 3];
這正是我所期望的。該代碼在 JMP 17 上的工作方式相同
Re: 關於 Python 和 JMP 的交互問題Names Default To Here( 1 );
Python Init();
x = [1, 2, 3];
Python Send( x,Python Name("y") ); // the python name seems to be a string
Python Submit( "print(y)" );
Python Term();
我想你可能更喜歡像我在使用 Python Selenium 編寫瀏覽器腳本.
- PythonExecute( { input }, { output }, " python code using input and producing output " )
- 嘗試:...除了...圍繞python代碼
- 返回一個字符串作為返回碼,注意 repr(e) 從異常中獲取一個字符串
- 檢查 PythonExecute 的返回碼和字符串返回碼,它們針對不同的錯誤
JMP 目前在處理 python 腳本中的錯誤方面做得不是很好; try-except 將使您的工作更加有趣。
Re: 關於 Python 和 JMP 的交互問題感謝您的支持,我想我知道我的 JMP 發生了什麼,因為我只是將我的計算機操作系統從 WIN10 重新安裝到 WIN 11,這可能會丟失 JMP 的一些關鍵環境,問題已解決但發生了另一個問題:
// This is the Scripts manual code for Python Get
Names Default To Here( 1 );
Python Init();
x1 = [1, 2, 3];
Python Send( x1 );
x2 = Python Get( x1 );
Show( x1, x2 );
dt1 = Open( "$SAMPLE_DATA/Big Class.jmp" );
Python Send( dt1 );
dt2 = Python Get( dt1 );
dt2 << New Data View;
Close( dt1 );
Python Term();
它的輸出如下所示:
x1 = [1, 2, 3];
x2 = [1, 2, 3];
Send Expects Scriptable Object in access or evaluation of 'Send' , dt2 << /*###*/New Data View/*###*/
在腳本索引的第 10 行
我得到 dt2 的類型是 Number : Type(dt2) = "Number";,那麼這個問題有什麼解決方案嗎?
Re: 關於 Python 和 JMP 的交互問題感謝您的回答
Re: 關於 Python 和 JMP 的交互問題抱歉,我只是忘記安裝 Python 包,問題已解決