Esiste un equivalente pitone del 'rvm' di Ruby?


145

D: Abbiamo qualcosa di funzionalmente equivalente in Python al gestore di versioni di Ruby 'rvm' ?


( RVM consente di passare facilmente completamente tra le diverse versioni dell'interprete rubino e diversi insiemi di gemme (moduli). Tutto ciò che riguarda scaricare-build-install-interruttore di interprete (-s) e gemme ottiene curati invocando RVM. E ' tutti eseguiti con il tuo account utente normale.)

Risposte:


94

Sì, è virtualenv insieme a virtualenvwrapper .

aggiornamento: è possibile installare entrambi contemporaneamente con virtualenv burrito .

Aggiornamento : la risposta corretta ora è probabilmente pyenv .

Per il calcolo scientifico, lo strumento corrispondente è l' anaconda .


2
Non ho capito bene. Dove è possibile installare diverse versioni di Python? Sembra che stia solo usando la versione di Python del sistema.
docwhat,

4
Ma c'è un modo per raggruppare una specifica installazione di Python (diciamo, 2.7) con determinate uova in un progetto e con altre uova in un altro? RVM gestisce tutte queste cose senza soluzione di continuità ed sudoè un ricordo del passato.
Kyle Wild,

4
Virtualenv consente di destreggiarsi tra le versioni di Python e tra diversi set di uova; ma non si occuperà della compilation + installazione di Python stesso. RVM fa esattamente questo per Ruby. Se vuoi costruire una versione specifica di Python perché non puoi installarla dai pacchetti per qualche motivo, allora vuoi controllare pythonbrew (solo l'altra risposta appena sotto).
jpetazzo,

3
Non vedo come questo supporti diverse versioni di Python.
Dogweather,

3
RVM si occupa della compilazione degli interpreti Ruby. Permette anche di scaricare quelli precompilati, se disponibili.
Andrey Mikhaylov - lolmaus,

85

Pythonbrew non è più in fase di sviluppo. L'ex manutentore suggerisce di usare "PyEnv" (vedi sotto) ".

pythonbrew è arrivato! http://github.com/utahta/pythonbrew

pyenv: https://github.com/yyuu/pyenv


Interessante, potrebbe valere la pena provare. Vedo che le sue invocazioni di comando sono abbastanza simili a quelle di rvm...
Conny,

1
Come qualcuno che è abbastanza abile in rvm, pythonbrew era una brezza assoluta a cui abituarsi. Grazie per il consiglio!
elmt

1
Grazie mille. Credo che questa sia la vera risposta da ora in poi.
sayth

Dovrebbe essere utile vedere pypy e jython aggiunti all'elenco dei pitoni noti.
sayth

Non molto più del traffico. Vale ancora la pena esaminarlo?
Debilski,

51

Ho creato pyenv che è un fork di rbenv di Ruby e modificato per Python. Come pythonz, pyenv supporta anche Stackless, PyPy e Jython.


6

In seguito alla risposta di hytdsh (quasi due anni dopo) ...

pythonz un fork di pythonbrew che aggiunge il supporto per Stackless, PyPy e Jython.

Se ti piace come rvm gestisce diversi interpreti, vale la pena dare un'occhiata a pythonz. Se lavori rigorosamente con CPython, la differenza è meno significativa.


5

Opzionalmente, se stai usando Macports puoi usare python_select. Installa python_selectcon:

$ sudo port install python_select

Supponendo che python 2.6 e 2.5 abbiano installato ape tramite Macports, puoi cambiare pitone in questo modo:

$ sudo python_select python25
=> Selecting version "python25" for python
$ python --version
=> 2.5.5
$ sudo python_select python26
=> Selecting version "python26" for python
$ python --version
=> 2.6.6

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.