pyversion can't be set in startup file on Linux

조회 수: 6 (최근 30일)
aepound
aepound 2018년 9월 19일
답변: Karan Singh 2025년 2월 3일
I am running R2017b on Ubuntu 16.04 LTS. I would like to make sure that while working on a particular project I always have python loaded. So I tried to put a python call in the startup.m file (or use the pyversion command) to make sure that python was loaded.
But Matlab errors and can't find the "py" variable, and subsequently can't finish the startup file. Yet, if I run the startup file just after Matlab is opened, it works just fine.
How can I make sure that python is loaded in my startup file? Or does Matlab only load its python interface after the call to startup.m?

답변 (1개)

Karan Singh
Karan Singh 2025년 2월 3일
Hi @aepound, I think your intuition makes sense, Python is likely initialized after the startup.m script runs, which explains why it executes afterward. How about adding a "Timer" delay for Python initialization? This could help ensure that Python starts only after MATLAB has fully initialized.
timerObj = timer(...
'StartDelay', 1, ... // time based on your scenario
'TimerFcn', @(~,~) initializePythonFile(), ...
'ExecutionMode', 'singleShot' ...
);
start(timerObj);
Can you add the same in your startup.m file and check if this might be able to work.
Here is a documentation for "Timer" https://in.mathworks.com/help/matlab/ref/timer.html
Karan

카테고리

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

제품


릴리스

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by