Ricerca…


Osservazioni

Questa pagina dovrebbe coprire vari modi per configurare i percorsi Python Maya: userSetup, maya.env, variabili d'ambiente e così via

Utilizzando userSetup.py

Aggiungi percorsi arbitrari all'ambiente Maya Python nel file userSetup.py . userSetup.py è un file Python ( non un modulo) che viene eseguito automaticamente all'avvio di Maya. userSetup.py può vivere in un numero di posizioni, a seconda delle variabili os e di ambiente.

Quando Maya si avvia, eseguirà il contenuto del file userSetup. L'aggiunta di percorsi Python qui permetterà di trovare i moduli:

 import sys
 sys.path.append("/path/to/my/modules")

Questo renderà i file del modulo Python in "/ path / to / my / modules" disponibili per l'importazione usando la direttiva di import standard.

Per configurazioni più avanzate, il modulo del site può fare lo stesso utilizzando la funzione addsitedir() . site.addsitedir() supporta file .pth che configurano più percorsi in una volta.

Ad esempio, tre cartelle di Python non correlate potrebbero essere disposte in questo modo:

  python_files
  | 
  +---- studio
  |      +  module1.py
  |      +  module2.py
  |     
  +---- external
         |
         +---- paid
         |      + paidmodule.py
         |
         +---- foss
                + freemodule.py

Usando sys.path direttamente dovresti aggiungere python_files/studio , python_files/external/paid e python_files/external/paid manualmente. Tuttavia potresti aggiungere un file .pth alla radice di python_files che assomiglia a questo:

  studio
  external/paid
  external/foss

e chiamalo in userSetup:

 import site
 site.addsitedir("/path/to/python_files")

e avrai tutti i percorsi in una volta.

Utilizzo delle variabili d'ambiente

L'interprete di Maya Python funziona come un normale interprete Python, quindi utilizzerà le stesse variabili d'ambiente per trovare i file importabili come qualsiasi altra installazione di Python 2.6 o 2.7 (descritta in maggior dettaglio nella documentazione di Python .

Se non ci sono altre installazioni Python sulla tua macchina puoi usare le variabili di ambiente per indicare la posizione dei tuoi file Python per Maya (se hai un altro Python, cambiarle per il bene di Maya potrebbe interferire con la tua altra installazione di Python - tu » d essere migliore usando uno userSetup o uno script di avvio). Imposta variabile PYTHONPATH modo che includa i tuoi percorsi di ricerca. Se stai modificando la variabile per includere più percorsi, ricorda che su * NIX i percorsi sono separati da due punti:

  export PYTHONPATH="/usr/me/maya/shared:/usr/me/other_python"

dove su Windows sono punti e virgola:

  setx  PYTHONPATH C:/users/me/maya;//server/shared/maya_python

Configurazioni multiple

Un vantaggio dell'utilizzo di variabili di ambiente è che è possibile riconfigurare rapidamente un'installazione maya per caricare strumenti e script da posizioni diverse per progetti diversi. Il modo più semplice per farlo è impostare PYTHONPATH prima di avviare Maya in modo da ereditare i percorsi necessari per questa sessione di maya. Per esempio

  set PYTHONPATH=C:/users/me/maya;//server/shared/maya_python
  maya.exe

avvierà Maya (su Windows) con i percorsi C:/users/me/maya e //server/shared/maya_python disponibili per l'uso. È possibile avviare una seconda copia di Maya da una nuova riga di comando utilizzando un comando set diverso e la seconda Maya utilizzerà percorsi diversi.

Poiché è difficile per la maggior parte degli utenti finali digitare questo tipo di cose, è una buona idea automatizzare il processo con un file batch o shell che imposta le variabili di ambiente locali e avvia maya. nota: abbiamo bisogno di esempi di questo per i file .bat e .sh In questo sistema dovresti distribuire un file .bat o .sh per ogni progetto che stavi supportando e i tuoi utenti avrebbero lanciato maya usando quelli; lanciando maya senza il file bat verrebbero ripristinati nella configurazione Maya predefinita senza script personalizzati.



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow