Verwenden Sie Standard Python, während Sie Anaconda haben

9

Für die Entwicklung in Python verwende ich Miniconda auf meinem Mac mit Macos Sierra. Allerdings muss ich ein Framework verwenden, das nur mit dem Standard-Python (vorhanden bei /usr/bin/python ) arbeitet.

Meine Frage ist: Wie kann ich Pakete für dieses Standard-Python installieren? Wenn ich pip some-package verwende, installiert dies automatisch das Paket für die root conda-Umgebung.

BEARBEITEN: Wie in den Kommentaren besprochen, stimme ich zu, dass es eine schlechte Idee ist, sich mit der Systemstandardversion von Python herumzuschlagen. Stattdessen möchte ich, dass dieses SDK in einer Conda-Umgebung oder mit Python 2.7 von python.org installiert wird. Nichts davon scheint jedoch zu funktionieren! Wie funktioniert das?

    
JNevens 03.10.2017, 17:03
quelle

9 Antworten

3

Sie versuchen nicht, das Paket any zu installieren. Sie versuchen, das sehr spezifische Paket pynaoqi zu installieren, für das ein externes SDK erforderlich ist, das für die spezifische Architektur kompiliert wird. Sie sollten Ihre Frage entsprechend bearbeiten.

Nach dem, was ich im Internet gesehen habe, ist das keine triviale Aufgabe. Stellen Sie zuerst sicher, dass Sie die Version 2.5 des SDKs haben, die zur MacOS-Version passt . Dann schau dir dieses Skript an . Wie sie sagen, sollten die dynamischen Bibliotheken umbenannt werden, um zu arbeiten. Übrigens brauchen Sie 64-Bit Python 2.7.

    
igrinis 11.10.2017 08:38
quelle
2

Um Pakete mit dem System Python zu installieren, können Sie /usr/bin/easy_install benutzen, das zu MacOS gehört.

Vielleicht möchten Sie pip installieren von dort, indem Sie:

%Vor%

Sobald Sie pip installiert haben, können Sie es nicht direkt verwenden, wenn der Befehl conda pip es überschattet. Sie haben hier mehrere Optionen, abhängig von Ihrem Geschmack. Sie können den System-Pip auf alias systempip=/usr/bin/pip umbenennen oder /usr/bin vor /Users/user/anaconda/ in Ihrem $PATH haben.

Wie bereits in anderen Antworten erwähnt, wird das Python-System nicht empfohlen , Dinge können brechen a>, und Sie können (am meisten) sicher jedes Paket erhalten, um in einer Conda-Umgebung zu arbeiten.

Einige Pakete funktionieren für einige Leute nicht ohne weiteres mit Anacondas Python, weil die Distribution standardmäßig auf einen nicht-Framework-Build von Python basiert. Eine häufige Beschwerde kam zum Beispiel von Benutzern von matplotlib, die keine Figurfenster richtig anzeigen konnten . Zum Glück bietet Conda auch einen Framework-Build von Python namens pythonw oder pythonw3 . Vielleicht können Sie versuchen, Ihr Paket mit pythonw arbeiten zu lassen, wenn Ihre Probleme von dort kommen.

    
dangom 10.10.2017 09:43
quelle
1

Versuchen Sie dies, finden Sie Ihren Weg zu Pfad / zu / Python / Scripts:

%Vor%

Und pip hier.

    
Anton vBR 03.10.2017 18:48
quelle
1

pip some-package installiert für die root anaconda-Umgebung, weil es pip aus der anaconda-Bibliothek verwendet. Anaconda fügt anaconda root dir zu path vor / usr / bin / hinzu. Wenn du also pip benutzt, findest du es auf der Anaconda-Wurzel. check Pfad von Pip mit which pip , dies wird Ihnen den vollständigen Pfad von pip sagen.

Sie können es auf Standard-Python mit /usr/bin/python -m pip install some-package installieren. oder verwende /path/to/default/pip install some-package .

    
surya singh 06.10.2017 07:48
quelle
1

Das häufig auftretende Problem ist, dass Anaconda (oder Miniconda) in ihrem Verzeichnis bin eine ausführbare Datei python und eine ausführbare Datei pip hat.

Wenn Sie / usr / bin / python wirklich ausführen müssen, führt dies zu der ärgerlichen Schlussfolgerung: Sie können conda nicht in Ihren Pfad einfügen .

Das hat mich zu einigen nervigen Machenschaften in meinem .bash_profile geführt. Sie können die gleichen Techniken für Sie verwenden, aber der genaue Pfad zu conda kann abweichen:

%Vor%

Option 2:

Möglicherweise müssen Sie nur die gleiche Version oder PYTHONPATH als / usr / bin / python ausführen. Dann erstellen Sie eine Conda-Umgebung mit dieser Version:

%Vor%

oder, setze einen PYTHONPATH

%Vor%

Option 3:

Deinstallieren Sie Conda. Es ist ein gutes Werkzeug für eine Reihe von Problemen, die nicht Ihre aktuellen Probleme sind.

    
Charles Merriam 09.10.2017 23:53
quelle
1

Ich habe auch einen Mac mit Sierra.

Annahme: Nehmen wir an, Sie haben Anaconda. Jetzt hätten Sie DefaultPython (python2) und sagen, dass Anaconda von Python3 ist.

Secret: Die Art und Weise, wie eine Shell / Standard-Python ausgewählt wird, ist mit der PATH-Variablen in einer Shell festgelegt. Wenn Sie also Anaconda installieren, sollte der Installer versuchen, neue Pfadvariablen für Ihre Standard-Bash-Shell festzulegen.

Lösung: Verfügen über einen Python (2 oder 3) als Standard. Versuchen Sie für den weniger verwendeten Pfad den vollständigen Pfad zu verwenden. Wenn Sie

verwenden müssen

Cheat-Code : Erstelle /usr/bin/python als symbolischen Link zum aktuellen Repo des Pythons (speichere den alten). Dies kann entsprechend Ihrer Verwendung geändert werden.

Hoffe, das funktioniert!

    
Sampath 10.10.2017 19:01
quelle
1

Ich bin mir nicht sicher, ob ich dein Problem richtig verstanden habe, aber wenn das Problem ist, dass du leicht zwischen verschiedenen Versionen von Python wie System Python, anderen Versionen von Python, verschiedenen Versionen von Miniconda oder Anaconda, die an bestimmte Versionen von Python gebunden sind, wechseln willst (das sind nicht nur virtuelle Umgebungen) auf Ihrem Mac, dann ist die beste Lösung pyenv .

Es verbindet sich automatisch mit den aktuellen /usr/bin/python , /usr/bin/pip und anderen Binärdateien, wie zB ipython , abhängig vom Kontext. Es gibt verschiedene Optionen für den Kontext, aber ich verwende normalerweise system python als Standard und pyenv local für jedes Projekt, das im Grunde eine Datei mit dem Versionsnamen in Ihrem aktuellen Verzeichnis und jedesmal cd im Verzeichnis oder seinen Unterverzeichnissen ablegt /usr/bin/python wird automatisch auf die ausgewählte Version umgeschaltet.

    
newtover 11.10.2017 07:15
quelle
0

Sie müssen Ihre PATH-Umgebungsvariable verwalten. Ich möchte Funktionen in meinem Shell-Profil behalten, um "on" und "off" zu schalten. Also, auf einem Mac zum Beispiel:

%Vor%

Wenn Sie dann aufhören wollen, conda zu verwenden, geben Sie einfach deactconda an der Eingabeaufforderung ein.

    
Gabriel Perdue 12.10.2017 22:58
quelle
0

Sie können dies auf mehrere Arten tun, indem Sie zunächst den Pfad zum Pip an Ihrem Standardspeicherort angeben,

%Vor%

zum Beispiel, wenn Sie ein Python 2.7 dann haben,

sudo /usr/local/bin/pip2.7 install networkx

Dies sollte den Trick für Sie tun. Danach können Sie alle Pakete installieren und sie mit Standard-Python aufrufen (meins ist 2.7 hier)

ab der Pip-Version 0.8 können Sie auch sudo /usr/local/bin/pip-2.x install package sowie

angeben     
JAugust 13.10.2017 04:27
quelle

Tags und Links