2010-12-16 5 views
12

Ich habe gerade die Python 2.7.1 DMG von Python.org heruntergeladen. Ich habe Vorschläge gesehen, um ActivePython zu bekommen, aber ich würde die von Python.org bevorzugen.Installieren Sie Python 2.7.1 Seite an Seite mit Apple-Python

  1. Wenn ich den mpkg Installateur in der DMG nur laufen, alle Standardeinstellungen übernimmt, wird er friedlich mit dem Apple-supplied Python leben? Wenn ich im Terminal python tippe, was bekomme ich?
  2. Im Terminal, wie gebe ich an, um die Apple-Python zu laufen? Was ist mit der Python, die ich selbst installiert habe?
  3. Worum geht es bei der Installation einer anderen Python-Version bei der Einstellung PATH? Ich verstehe, dass das Python-Installationsprogramm es nur automatisch einrichten wird. Aber ich möchte immer noch unter die Haube schauen. Ich weiß, wie man das in Windows (Environment Variables) macht. Wie bastele ich für Mac OS X mit dem PATH?

Ich könnte diese auch zuerst selbst ausprobieren, aber ich bin neu auf dem Mac. Python ist eine ziemlich komplizierte Installation, schreibt Dateien in verschiedene Ordner und konfiguriert Betriebssystemeinstellungen wie PATH. TrashMe oder AppCleaner ist möglicherweise nicht sehr effektiv bei der Deinstallation von Python, wenn ich jemals zu einem leeren Fenster zurückkehren möchte. Deshalb möchte ich klare Einsichten zu meinen obigen Fragen gewinnen.

+0

Können Sie entweder akzeptieren eine Antwort bitte oder den Thread aktualisieren, warum die Antworten werden nicht akzeptiert zu werden? – Sumod

Antwort

24

Wenn Sie nicht den Standardsatz der Pakete geändert haben, wenn die python.org Installer verwenden, sollte python von einer Befehlszeile eingeben 2.7 den neu installierten Python ausführen. (Sie müssen nach dem Ausführen des Installationsprogramms eine neue Terminalsitzung starten, um dies zu sehen.) Die aktuellen Python.org-Installationsprogramme für OS X erstellen je nach Python-Version einen Ordner in Ihrem Anwendungsverzeichnis mit dem Namen Python m.n. Wenn Sie in /Applications/Python 2.7 suchen, sehen Sie eine Datei mit dem Namen Update Shell Profile.command. Es ist ein Shell-Skript; Sie können es in einem Editor oder mit Quicklook überprüfen. Sein Zweck besteht darin, die Startup-Dateien für die gängigsten Shell-Programme unter OS X zu ändern (bash, sh, csh), um sicherzustellen, dass das Verzeichnis, in dem sich die neuen ausführbaren Python-Befehle befinden, vor die Liste der Verzeichnisse im PATH gesetzt wird Umgebungsvariable, so dass die Python-Befehle darin gefunden werden, bevor die von Apple gelieferten Python-Befehle gefunden werden. Standardmäßig führt das Installationsprogramm das Update Shell Profile.command automatisch für Sie aus. Dies sollte in etwa wie folgt ergeben:

$ cat ~/.bash_profile 
# .bash_profile 
# ... other stuff 

# Setting PATH for Python 2.7 
# The orginal version is saved in .bash_profile.pysave 
PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}" 
export PATH 

Wenn Sie einen Blick in dieses Verzeichnis nehmen, sollten Sie etwas sehen:

$ ls -l /Library/Frameworks/Python.framework/Versions/2.7/bin 
total 272 
lrwxr-xr-x 1 root admin  8 Nov 30 00:49 [email protected] -> 2to3-2.7 
-rwxrwxr-x 1 root admin 140 Nov 30 00:30 2to3-2.7* 
lrwxr-xr-x 1 root admin  7 Nov 30 00:49 [email protected] -> idle2.7 
-rwxrwxr-x 1 root admin 138 Nov 30 00:30 idle2.7* 
lrwxr-xr-x 1 root admin  8 Nov 30 00:49 [email protected] -> pydoc2.7 
-rwxrwxr-x 1 root admin 123 Nov 30 00:30 pydoc2.7* 
lrwxr-xr-x 1 root admin  9 Nov 30 00:49 [email protected] -> python2.7 
lrwxr-xr-x 1 root admin  16 Nov 30 00:49 [email protected] -> python2.7-config 
-rwxrwxr-x 1 root admin 33764 Nov 30 00:31 python2.7* 
-rwxrwxr-x 1 root admin 1663 Nov 30 00:31 python2.7-config* 
lrwxr-xr-x 1 root admin  10 Nov 30 00:49 [email protected] -> pythonw2.7 
-rwxrwxr-x 1 root admin 33764 Nov 30 00:31 pythonw2.7* 
lrwxr-xr-x 1 root admin  11 Nov 30 00:49 [email protected] -> smtpd2.7.py 
-rwxrwxr-x 1 root admin 18586 Nov 30 00:30 smtpd2.7.py* 

Die neue Python ist als der Befehl zur Verfügung python2.7 aber es gibt auch ein symbolischer Link zu ihm als python.Da die PATH-Umgebung geändert wurde:

$ echo $PATH 
/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin 

wenn Sie python als Befehl in der Shell eingeben, wird dieser Symlink zuerst gefunden werden, bevor die von Apple bereitgestellten python in /usr/bin eines der Verzeichnisse, in denen vom System bereitgestellte Benutzerbefehle installiert sind (wie auf OS X 10.6): (. Beachten Sie, dass in der Regel sollten Sie Dateien nicht versuchen, in /usr/bin zu ändern oder zu löschen, da sie Teil von OS X und verwaltet von Apple sind)

$ ls /usr/bin/py* 
/usr/bin/pydoc*   /usr/bin/python-config* /usr/bin/[email protected] 
/usr/bin/[email protected]   /usr/bin/[email protected]  /usr/bin/pythonw* 
/usr/bin/[email protected]   /usr/bin/[email protected] /usr/bin/[email protected] 
/usr/bin/python*   /usr/bin/[email protected]  /usr/bin/[email protected] 

Es gibt viele Möglichkeiten, mehrere Python-Installationen unter OS X zu verwalten. Überprüfen Sie die Archive oder das Internet. Beachten Sie, dass Sie immer einen absoluten Pfad zum gewünschten Python-Befehl verwenden können. So mit dem modifizierten Pfad wie oben sollten Sie die folgenden Verhaltensweisen sehen:

$ /Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 -c 'import sys;print(sys.version)' 
2.7.1 (r271:86882M, Nov 30 2010, 09:39:13) 
[GCC 4.0.1 (Apple Inc. build 5494)] 
$ python2.7 -c 'import sys;print(sys.version)' 
2.7.1 (r271:86882M, Nov 30 2010, 09:39:13) 
[GCC 4.0.1 (Apple Inc. build 5494)] 
$ python -c 'import sys;print(sys.version)' 
2.7.1 (r271:86882M, Nov 30 2010, 09:39:13) 
[GCC 4.0.1 (Apple Inc. build 5494)] 
$ /usr/bin/python -c 'import sys;print(sys.version)' 
2.6.1 (r261:67515, Jun 24 2010, 21:47:49) 
[GCC 4.2.1 (Apple Inc. build 5646)] 
$ /usr/bin/python2.6 -c 'import sys;print(sys.version)' 
2.6.1 (r261:67515, Jun 24 2010, 21:47:49) 
[GCC 4.2.1 (Apple Inc. build 5646)] 
4
  1. Ja, es wird gut funktionieren.
  2. Sie müssen den entsprechenden Symlink ändern. Sie können immer mit which python überprüfen.
  3. Sie können zusätzliche Symlinks für die verschiedenen Versionen erstellen (z. B. python_mac und python_standard).
  4. Gelesen this.
1

Verschiedene Python-Installationen können ohne Hinderung laufen speziell gemacht werden, wenn Sie virtualenv

verwenden können Sie diese Artikel folgen zu

  1. bootstrapping virtual environments
  2. setting up python ecosystems

Diese werden Sie anweisen, verschiedene Versionen von Python an verschiedenen Orten mit jeweils eigenen Site-Paketen zu installieren und sie individuell in verschiedenen Projekten arbeiten zu lassen. Ich empfehle dringend, dass Sie sich damit beschäftigen, denn es erklärt auch, wie Sie die Variable PATH auf einfache Weise ändern können, so dass verschiedene Python-Installationen von Ihren Shell-Befehlen gefunden werden können. Hier

ist einige kurze Informationen über, wo verschiedene Python-Installationen gehen ..

which python am Terminal eingeben werden Sie seine Position mitteilen. Sie können auch python -V verwenden, um die verwendete Version zu sehen. Denken Sie daran, python und python2.x können verschiedene Dinge sein. Sie können verschiedenen Python-Installationen entsprechende Namen zuweisen, um sie am Terminal oder in Ihren Skripten mit dem Befehl alias aufzurufen. Zum Beispiel

alias /Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 sys-py27 
  • von Apple mitgelieferten System Python bei /System/Library/Frameworks/Python.framework installiert und /usr/bin/python

    • der Tat, sollten Sie nicht mit Zohan an diese, indem Sie versuchen, sie manuell zu löschen. Das System Python könnte von anderer Software in Ihrem Computer verwendet werden.
    • Um zu prüfen, was zur Zeit ist das System Python Sie

      python -c 'import sys;print(sys.version)'

  • Packaged Installateure, die Sie herunterladen und laufen in der Regel installieren zu /Library/Frameworks/Python.framework/Versions/2.7/bin/

    • können Sie manuell die entfernen Python.Framework-Ordner. Sie können Python auch im Ordner "Programme" sehen, zusammen mit anderen Dingen wie IDLE, AppBuilder und PythonLauncher. Sie können einfach weitermachen und diese löschen, wenn Sie müssen.
  • MacPorts wird installieren Python oder so etwas wie python26 und python27 zu /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/

    • Sie können sie deinstallieren, indem üblichen sudo port uninstall packageName verwenden und wenn Sie wollen Abhängigkeiten so etwas wie diesen Code verwenden, um entfernen

      sudo port uninstall python27 --follow-dependents installed

    • Alle zusätzlichen Dinge wie numpy, scipy, PIL, opencv usw., die Sie versuchen, port zu

      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages

mit installieren gehen