Tutorial virtualenv completo per principianti? [chiuso]


356

Ultimamente ho sentito il ronzio di virtualenv e sono interessato. Ma tutto quello che ho sentito è un pizzico di lode e non ho una chiara comprensione di cosa sia o come usarlo.

Sto cercando (idealmente) un tutorial che mi può portare da Windows o Linux senza Python e spiegare ogni passo di (in nessun ordine particolare):

  • cosa dovrei fare per poter iniziare a usare virtualenv
  • motivi specifici per cui l'utilizzo virtualenvè una buona idea
  • situazioni in cui posso / non posso usare virtualenv
  • situazioni in cui dovrei / non dovrei usare virtualenv

E passare attraverso (in modo completo) un paio di situazioni esemplari della varietà should + can.

Quindi quali sono alcuni buoni tutorial per coprire queste cose? O se hai tempo e interesse, forse puoi rispondere ad alcune di queste domande qui. O nella tua risposta o come link ai tutorial che rispondono, queste sono le cose che mi piacerebbe sapere.


6
Questo articolo di dabapps semplifica i concetti
suhair il



Come un debuttante di Python, stavo cercando un'introduzione diretta a virtualenv (e pip) e ho appena passato questo: [ dabapps.com/blog/introduction-to-pip-and-virtualenv-python/] [1] [1]: dabapps.com/blog/introduction-to-pip-and-virtualenv-python questo eccellente post sul blog ha rimosso tutta la frustrazione che ho avuto dopo aver letto altri confusi / approssimativi.
Arnaud Bouchot,

Risposte:


245

3
+1 Sono d'accordo che erano buoni per un principiante come me. Ho esaminato entrambi, ora so almeno di cosa si tratta e le basi per ottenerlo / usarlo. (Il secondo per qualche motivo spiegato activatema trascurato deactivateo_O). Sto ancora sperando in ulteriori elaborazioni su quando usarlo (e quando non farlo) e su esempi più profondi.
Dan Burton,

1
Credo che la risposta sia usarla sempre, nello stesso modo in cui dovresti sempre usare il controllo versione.
mlissner

1
Ricorda che --no-site-pacchetti è obsoleto e ora è il comportamento predefinito.
Adrian Lopez,

1
Questo mi ha dato una buona idea virtualenv. Consigliato da usare virtualenvwrapperche è stato menzionato nella parte successiva del documento.
gihanchanuka,

2
È divertente come fondamentalmente non un singolo virtualenvtutorial su Internet, né la guida dell'utente di virtualenv , ti mostrino effettivamente come utilizzare l'ambiente sul tuo script Python. Non stai configurando un ambiente solo per il gusto di creare un ambiente. Ho trovato un tutorial che ti mostra almeno l'alternativa .
Foraggio

34

Virtualenv è uno strumento per creare ambienti Python isolati .

Supponiamo che tu stia lavorando in 2 diversi progetti, A e B. Il progetto A è un progetto web e il team sta utilizzando i seguenti pacchetti:

  • Python 2.8.x
  • Django 1.6.x

Il progetto B è anche un progetto web ma il tuo team sta usando:

  • Python 2.7.x
  • Django 1.4.x

La macchina su cui stai lavorando non ha alcuna versione di Django, cosa dovresti fare? Installa Django 1.4? Django 1.6? Se installi django 1.4 a livello globale sarebbe facile puntare a django 1.6 per lavorare nel progetto A?

Virtualenv è la tua soluzione! È possibile creare 2 virtualenv diversi, uno per il progetto A e un altro per il progetto B. Ora, quando è necessario lavorare nel progetto A, è sufficiente attivare virtualenv per il progetto A e viceversa.

Un suggerimento migliore quando si utilizza virtualenv è installare virtualenvwrapper per gestire facilmente tutti i virtualenv che hai. È un wrapper per la creazione, il funzionamento e la rimozione di virtualenv.


1
Sebbene questo collegamento possa rispondere alla domanda, è meglio includere qui le parti essenziali della risposta e fornire il collegamento come riferimento. Le risposte di solo collegamento possono diventare non valide se la pagina collegata cambia.
joce

2
Ho modificato la risposta e aggiunto più valore alla stessa. Grazie per il feedback
lborgav,

8

Eccone un altro buono: http://www.saltycrane.com/blog/2009/05/notes-using-pip-and-virtualenv-django/

Questo mostra come usare pipe un file di requisiti pip con virtualenv; I due tutorial suggeriti da Scobal sono entrambi molto utili ma sono entrambi easy_install-centrici.

Nota che nessuno di questi tutorial spiega come eseguire una versione diversa di Python all'interno di un virtualenv - per questo, vedi questa domanda SO: Usa una versione diversa di Python con virtualenv


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.