Testing if a Python executable was detected, gracefully

조회 수: 2 (최근 30일)
Dev-iL
Dev-iL 2017년 8월 24일
댓글: Dev-iL 2017년 8월 24일
Hello everybody,
I'm writing unit tests for code that calls some Python scripts. Early on, I would like to test whether MATLAB can find a valid Python executable. Naturally, the function to use in this case is `pyversion` - however, the documentation does not specify the expected outputs in case an executable is not found. I'm assuming these are empty strings/char arrays, but have no way of verifying that.
Another approach that would likely work is just trying to use the interface (with a fallback):
try
py.None; % or many other constants/functions that work when python is set up correctly
% ... it works
catch
% ... it doesn't work
end
However, this makes me cringe a little, since I'd rather avoid `try/catch` if there's an `if/else` that can achieve the same.
Can you please suggest a graceful non-windows-specific way to test if the current instance of MATLAB is able to interface with Python?
  댓글 수: 3
Dev-iL
Dev-iL 2017년 8월 24일
Hi Adam - thank you for trying that! Which OS+MATLAB release did you get this on?
Adam
Adam 2017년 8월 24일
Windows 10 R2017a

댓글을 달려면 로그인하십시오.

답변 (1개)

Fangjun Jiang
Fangjun Jiang 2017년 8월 24일
Did you check "doc pyversion"?
The syntax is there:
[version, executable, isloaded] = pyversion
  댓글 수: 1
Dev-iL
Dev-iL 2017년 8월 24일
Of course I checked it - it is also mentioned in the question.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Startup and Shutdown에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by