2015-11-14 8 views
28

Ich möchte Python für wissenschaftliche Anwendungen verwenden und nach einigen Untersuchungen entschieden, dass ich Anaconda verwenden wird, wie es mit vielen Paketen gebündelt ist und neue Module mit conda install durch hinzufügen Das Cmd ist einfach.Verwenden mehrerer Python-Engines (32Bit/64bit und 2.7/3.5)

Ich bevorzuge die 64-Bit-Version für bessere RAM-Nutzung und Effizienz, aber 32-Bit-Version wird auch benötigt, weil einige Bibliotheken 32bit sind. Ähnlich bevorzuge ich Python 3.5 als das ist die Zukunft und die Art, wie die Dinge laufen. Aber viele Bibliotheken sind immer noch 2,7, was bedeutet, dass ich beides brauche.

Ich muss 4 Versionen von Anaconda (64bit 2.7, 64bit 3.5, 32bit 2.7, 64bit 3.5) installieren. Jede Version ist etwa 380 MB. Ich möchte Jupyter Notebook und Spyder als IDE verwenden. Ich musste bei Bedarf zwischen den Versionen wechseln. Ich hatte widersprüchliche Bibliotheken, Pfadprobleme und alle möglichen seltsamen Probleme.

Also plane ich eine Neuinstallation von Grund auf. Ich würde gerne wissen, ob es einen vernünftigeren Weg gibt, damit umzugehen. Ich benutze Windows 7 64 Bit für jetzt, wenn das wichtig ist.

+1

Sie brauchen keine separate Conda-Installation für jede Python-Version. Stattdessen möchten Sie sich vielleicht mit dem Konzept von Condas Umgebungen vertraut machen. Heutzutage sollte es möglich sein, eine 64bit Version aus fast jeder Bibliothek zu bekommen. Wenn dies nicht der Fall ist (was ich definitiv überprüfen würde), müssen Sie zwei separate Anaconda-Versionen pflegen, die die Dinge etwas komplizierter machen. – cel

+0

@cel Das ist cool! Conda-Umgebungen ist wahrscheinlich das, wonach ich suche. Ein kurzer Blick auf http://conda.pydata.org/docs/py2or3.html zeigt, dass ich mehrere Umgebungen für 2.7, 3.5 usw. mit separaten Bibliotheken haben kann. Aber ich bin nicht sicher, 32bit/64bit Problem kann in Umgebungen zugewiesen werden. Wie auch immer, es wäre nett, wenn Sie Ihren Kommentar als Antwort hinzufügen könnten. – rmf

+0

Warum mit Anakonda beschäftigen? Vanilla Python hat alles, was Anaconda hat, und ist viel flexibler, Sie haben Dinge wie [Pyenv] (https://github.com/yyuu/pyenv), um einfach mehrere Umgebungen zu installieren und sie zu entfernen. – simonzack

Antwort

45

Stellen Sie sicher, 2.7 die richtigen Umgebungsvariablen (https://github.com/conda/conda/issues/1744)

Erstellen Sie eine neue Umgebung für die 32-Bit-Python zu setzen:

set CONDA_FORCE_32BIT=1 
conda create -n py27_32 python=2.7 

es aktivieren:

set CONDA_FORCE_32BIT=1 
activate py27_32 

es deaktivieren:

deactivate py27_32 

Erstellen Sie eine für 64-Bit-Python 3.5:

set CONDA_FORCE_32BIT= 
conda create -n py35_64 python=3.5 

es aktivieren:

set CONDA_FORCE_32BIT= 
activate py35_64 

Das beste wäre, die Aktivierungsbefehle in einer Batch-Datei zu schreiben, so dass Sie nur einen Befehl eingeben müssen und kann nicht vergessen, das richtige 32/64 Bit Flag zu setzen.

UPDATE

Sie benötigen keine vollständige Anaconda-Distribution für diese zu installieren. Miniconda ist genug:

Diese Miniconda-Installer enthalten den Conda-Paket-Manager und Python. Sobald Miniconda installiert ist, können Sie den Befehl conda verwenden, um andere Pakete zu installieren und Umgebungen zu erstellen. ...

Es gibt zwei Varianten des Installers: Miniconda basiert auf Python 2 und Miniconda3 basiert auf Python 3. Beachten Sie, dass die Auswahl, welche Miniconda installiert ist, sich nur auf die Root-Umgebung auswirkt. Unabhängig von der installierten Miniconda-Version können Sie sowohl Python 2.x als auch Python 3.x-Umgebungen installieren.

Ich würde Ihnen empfehlen, Miniconda3 64-Bit als Ihre root-Umgebung zu verwenden.

Sie können jederzeit eine vollständige Anaconda installieren später mit:

conda install anaconda 

Hinweis, dass es einige Ihrer zuvor Installieren von Paketen in Ihrer aktiven Umwelt degradieren könnte.

+1

nett. Installiere ich einfach eine Version von Anaconda (sprich 64 Bit 2.7) und richte Umgebungen ein? Oder müssen mehrere Versionen von Anaconda installiert sein, damit die Umgebungen funktionieren? – rmf

+1

Hinzugefügt einen Absatz über Miniconda zu meiner Antwort. Dies sollte Ihre Frage beantworten. –

+0

Vielen Dank! Ich wusste bis jetzt noch nichts über 'CONDA_FORCE_32BIT'. –

2

Ich wollte nur Mike Mullers Antwort hinzufügen, da ich auch wollte, dass mein IPython zwischen 32 Bit und 64 Bit umschaltet.

Nach dem Einrichten der 32-Bit- oder 64-Bit-Umgebung. Verwenden Sie folgende Befehle

pip install ipykernel 

, um ipykernel auf diesem env zu installieren. Weisen Sie es dann mit:

hier myenv ist der Name Ihrer neuen Umgebung. Sehen Sie diese Seite hier für weitere Details zum Wechseln der Kernel - http://ipython.readthedocs.io/en/stable/install/kernel_install.html