Sto iniziando a lavorare con il pacchetto Anaconda di Continuum.io per fare lavori scipy. Sono stato in grado di avviare anaconda, ma non riesco a capire se anaconda crea una nuova variabile di ambiente PYTHONPATH per ogni nuovo ambiente che crea o se si basa sul sistema comune PYTHONPATH? Non sono riuscito a trovare alcuna informazione su questo nella documentazione. Inoltre, quando ho fatto un printenv, non ho visto una variabile PYTHONPATH nel nuovo ambiente creato - anche se ho trovato alcune nuove variabili d'ambiente create da anaconda. Il meglio che posso trovare è che anaconda ha aggiunto alcune directory anaconda e la nuova directory di ambiente alla variabile PATH, ma questo non isola necessariamente il nuovo pacchetto dall'ambiente di sistema, ma è vicino. Qualcuno conosce la risposta a questa domanda o ha trovato un modo per affrontare questa preoccupazione.Anaconda crea una variabile PYTHONPATH separata per ogni nuovo ambiente?
risposta
No, l'unica cosa che deve essere modificata per un ambiente Anaconda è il PATH (in modo che ottenga il giusto Python dall'ambiente bin/
directory o Scripts\
su Windows).
Il modo in cui gli ambienti di Anaconda funzionano è che collegano strettamente tutto ciò che viene installato nell'ambiente. A tutti gli effetti, questo significa che ogni ambiente è un'installazione completamente separata di Python e di tutti i pacchetti. Usando i collegamenti fisici, questo viene fatto in modo efficiente. Quindi, non c'è bisogno di pasticciare con PYTHONPATH perché il binario Python nell'ambiente cerca già i pacchetti del sito nell'ambiente, e la lib dell'ambiente, e così via.
Ah eccellente. È grandioso. Esattamente quello che volevo sapere. Grazie ancora. – krishnab
Usandolo su Windows Machine e PYTHONPATH dalle due Installazioni sicuramente differenti. L'anaconda non ha la mia directory di moduli in esso. Per riferimento l'ho aggiunto dalle Impostazioni di sistema avanzate in Windows 7. Sembra da python che sia in ipython che sia rotto – Joop
Anaconda non utilizza lo PYTHONPATH
. Si noti tuttavia che se è impostato PYTHONPATH
, potrebbe essere utilizzato per caricare una libreria che non si trova nell'ambiente anaconda. È per questo che prima di attivare un ambiente che potrebbe essere buono per fare un
unset PYTHONPATH
Per esempio questi punti PYTHONPATH ad un errato panda lib:
export PYTHONPATH=/home/john/share/usr/anaconda/lib/python
source activate anaconda-2.7
python
>>>> import pandas as pd
/home/john/share/usr/lib/python/pandas-0.12.0-py2.7-linux-x86_64.egg/pandas/hashtable.so: undefined symbol: PyUnicodeUCS2_DecodeUTF8
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/john/share/usr/lib/python/pandas-0.12.0-py2.7-linux-x86_64.egg/pandas/__init__.py", line 6, in <module>
from . import hashtable, tslib, lib
ImportError: /home/john/share/usr/lib/python/pandas-0.12.0-py2.7-linux-x86_64.egg/pandas/hashtable.so: undefined symbol: PyUnicodeUCS2_DecodeUTF8
disinserimento del PYTHONPATH
impedisce il lib panda sbagliato dal carico :
unset PYTHONPATH
source activate anaconda-2.7
python
>>>> import pandas as pd
>>>>
È sicuro usare PYTHONPATH per puntare a file e moduli prodotti localmente? C'è un modo migliore di usare PYTHONPATH? – garyp
Immagino che per dev funzioni bene. Tendo ad eseguire python dalla dir che ha il modulo su cui sto lavorando, che è fondamentalmente la stessa cosa. Puoi anche usare 'pip install -e python_module_dir' con l'anaconda env caricato in modo da non aggiornare il' PYTHONPATH'. – inodb
- 1. anaconda - variabile di ambiente path in windows
- 2. Html.RenderAction crea una richiesta separata?
- 3. Sessione separata per ogni finestra
- 4. Dopo l'installazione Anaconda, ottengo "KeyError: 'PYTHONPATH'" costante messaggi
- 5. Anaconda: include permanentemente pacchetti esterni (come in PYTHONPATH)
- 6. IE crea un nuovo ambito per ogni tag di script?
- 7. Installazione di Anaconda in un ambiente virtuale
- 8. come impostare la variabile di ambiente per l'utente root
- 9. Git - cartella separata per ogni ramo. Configurazione
- 10. Rapporto SSRS con ogni categoria una tabella/griglia separata
- 11. MEF e l'interfaccia separata portano a "Interfaccia per ogni classe"
- 12. separata dev e prod ambiente Firebase
- 13. PYTHONPATH temporaneo in Windows
- 14. Crea nuovo ClassLoader per ricaricare Classe
- 15. Virtualenv non crea un ambiente
- 16. Jinja2: Crea una nuova riga per ogni 3 articoli
- 17. Carica variabile di ambiente da script in PyCharm
- 18. Come aggiungere una cartella al percorso di ricerca per un determinato ambiente Anaconda?
- 19. virtualenv non crea pacchetti PYTHONPATH/pip installati non funzionano
- 20. PYTHONPATH ignorato
- 21. Come importare pyspark in anaconda
- 22. Ogni esecuzione del comando java avvia una JVM separata?
- 23. Variabile di ambiente per controllare java.io.tmpdir?
- 24. Crea notifica ogni giorno
- 25. Il cammello crea una discussione per ogni percorso
- 26. Perché connect-mongo crea una nuova sessione per ogni richiesta?
- 27. Javascript Crea nuovo "Thread"
- 28. Node.js per sempre con variabile di ambiente
- 29. set PYTHONPATH prima di istruzioni import
- 30. Servizio WCF che crea un nuovo thread per ogni nuova richiesta
Ma non tutti i pacchetti Python sono disponibili in Anaconda, quindi che dire di quando si usa pip per installare i pacchetti, come è comune? Quindi hai bisogno di un PYTHONPATH (specifico per la versione Python), quindi devi preoccuparti di cambiarlo/impostarlo in ogni shell/ogni volta che generi lo script 'activate' per cambiare la versione di Python. Destra? – smci