1815 Stimmen

Andere Python-Version mit virtualenv verwenden

Ich habe ein Debian-System läuft derzeit mit Python 2.5.4. Ich habe virtualenv richtig installiert, alles funktioniert gut. Gibt es eine Möglichkeit, dass ich eine virtualenv mit einer anderen Version von Python verwenden können?

Ich habe Python 2.6.2 kompiliert und würde es gerne mit einer Virtualenv verwenden. Reicht es aus, die Binärdatei zu überschreiben? Oder muss ich etwas in Bezug auf die Bibliotheken ändern?

2038voto

Daniel Roseman Punkte 565786

Verwenden Sie einfach die --python (oder kurz -p ), wenn Sie Ihre virtualenv-Instanz erstellen, um die ausführbare Python-Datei anzugeben, die Sie verwenden möchten, z. B.:

virtualenv --python=/usr/bin/python2.6 <path/to/new/virtualenv/>

N.B. Für Python 3.3 oder später, siehe The Aelfinn's Antwort unten.

737voto

The Aelfinn Punkte 11342

Seit Python 3, Die Python Docs empfehlen Erstellen Sie die virtuelle Umgebung mit dem folgenden Befehl:

python3 -m venv <myenvname>

Bitte beachten Sie, dass venv erlaubt es nicht, virtuelle Umgebungen mit anderen Versionen von Python zu erstellen. Installieren und verwenden Sie dazu die virtualenv Paket .


Überholte Informationen

Le site pyvenv Skript kann zur Schaffung einer virtuellen Umgebung verwendet werden

pyvenv /path/to/new/virtual/environment

aber sie ist seit Python 3.6 veraltet.

233voto

Daniel Lee Punkte 6040

Es gibt einen einfacheren Weg,

virtualenv venv --python=python2.7

Dank eines Kommentars funktioniert dies nur, wenn Sie python2.7 auf der Systemebene installiert haben (z.B. /usr/bin/python2.7).

Andernfalls, wenn Sie Homebrew verwenden, können Sie den Pfad verwenden, um das zu bekommen, was Sie wollen.

virtualenv venv --python=/usr/local/bin/python

Sie können den Pfad zu Ihrer Python-Installation finden mit

which python

Dies wird auch mit Python 3 funktionieren.

which python3
>> /usr/local/bin/python3
virtualenv venv --python=/usr/local/bin/python3

Letztlich verdichtet sich das zu:

virtualenv venv -p `which python`
virtualenv venv -p `which python3`

231voto

zzart Punkte 10506

Dies sind die Schritte, die Sie befolgen können, wenn Sie auf einer Shared-Hosting-Umgebung arbeiten und Python aus dem Quellcode installieren und kompilieren und dann Folgendes erstellen müssen venv aus Ihrer Python-Version. Für Python 2.7.9. würden Sie etwas in dieser Art und Weise tun:

mkdir ~/src
wget http://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz
tar -zxvf Python-2.7.9.tgz
cd Python-2.7.9
mkdir ~/.localpython
./configure --prefix=$HOME/.localpython
make
make install

virtuelle Umgebung

cd ~/src
wget https://pypi.python.org/packages/5c/79/5dae7494b9f5ed061cff9a8ab8d6e1f02db352f3facf907d9eb614fb80e9/virtualenv-15.0.2.tar.gz#md5=0ed59863994daf1292827ffdbba80a63
tar -zxvf virtualenv-15.0.2.tar.gz
cd virtualenv-15.0.2/
~/.localpython/bin/python setup.py install
virtualenv ve -p $HOME/.localpython/bin/python2.7
source ve/bin/activate   

Dies gilt natürlich für jede Situation, in der Sie genau die Umgebung replizieren möchten, in der Sie arbeiten und die Sie einsetzen.

116voto

iElectric Punkte 5403
virtualenv --python=/usr/bin/python2.6 <path/to/myvirtualenv>

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X