pyversion can't be set in startup file on Linux

6 visualizzazioni (ultimi 30 giorni)
aepound
aepound il 19 Set 2018
Risposto: Karan Singh il 3 Feb 2025
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?

Risposte (1)

Karan Singh
Karan Singh il 3 Feb 2025
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

Categorie

Scopri di più su Startup and Shutdown in Help Center e File Exchange

Prodotti


Release

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by