Installieren Sie Python2.7.3 + numpy + scipy + matplotlib + scikits.statsmodels + pandas0.7.3 korrekt

19193
boldnik

... unter Linux (xubuntu). Wie installiere ich python2.7.3 + numpy + scipy + matplotlib + scikits.statsmodels + pandas0.7.3 richtig? Mein letztes Ziel ist es, dass sie arbeiten. Das Problem:

~$ python --version Python 2.7.3 

also habe ich bereits einen system-default 2.7.3, was gut ist!

~$ dpkg -s python-numpy Package: python-numpy Status: install ok installed 

und ich habe bereits numpy installiert! großartig! Aber...

~$ python Python 2.7.3 (default, Oct 23 2012, 01:07:38)  [GCC 4.6.1] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import numpy as nmp Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named numpy 

Dieses Modul konnte von Python nicht gefunden werden. Dasselbe mit Scipy, Matplotlib. Warum?

~$ sudo apt-get install python-numpy [...]  Reading package lists... Done Building dependency tree  Reading state information... Done python-numpy is already the newest version. [...] 

warum sieht es nicht numpy und andere?

aktualisieren:

>>> import sys >>> print sys.path ['', '/usr/local/lib/python27.zip', '/usr/local/lib/python2.7', '/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk', '/usr/local/lib/python2.7/lib-old', '/usr/local/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/site-packages'] >>>  

also habe ich /usr/local/lib/python2.7

~$ pip freeze Warning: cannot find svn location for distribute==0.6.16dev-r0 BzrTools==2.4.0 CDApplet==1.0 [...] matplotlib==1.0.1 mutagen==1.19 numpy==1.5.1 [...] pandas==0.7.3 papyon==0.5.5 [...] pytz==2012g pyxdg==0.19 reportlab==2.5 scikits.statsmodels==0.3.1 scipy==0.11.0 [...] zope.interface==3.6.1 

Wie Sie sehen können, sind diese Module bereits installiert! Aber! ls -la / usr / local / lib / gibt NUR Python2.7 dir. Und weiterhin

~$ python -V Python 2.7.3 

und

import sys sys.version '2.7.3 (Standardeinstellung: 23. Oktober 2012, 01:07:38) \ n [GCC 4.6.1]'

aktualisierte:

Wahrscheinlich habe ich eine andere Instanz verpasst ... Eine /usr/Python-2.7.3/und eine zweite (scheint "weit vor" von Hand installiert worden zu sein) /usr/python2.7.3/Python-2.7.3/ Aber wie können zwei identische Versionen gleichzeitig funktionieren ??? Wahrscheinlich ist einer von ihnen "deaktiviert" (wird von keinem Programm verwendet, aber ich weiß nicht, wie ich prüfen kann, ob ein Programm es verwendet).

~$ ls -la /usr/bin/python* lrwxrwxrwx 1 root root 9 2011-11-01 11:11 /usr/bin/python -> python2.7 -rwxr-xr-x 1 root root 2476800 2012-09-28 19:48 /usr/bin/python2.6 -rwxr-xr-x 1 root root 1452 2012-09-28 19:45 /usr/bin/python2.6-config -rwxr-xr-x 1 root root 2586060 2012-07-21 01:42 /usr/bin/python2.7 -rwxr-xr-x 1 root root 1652 2012-07-21 01:40 /usr/bin/python2.7-config lrwxrwxrwx 1 root root 9 2011-10-05 23:53 /usr/bin/python3 -> python3.2 lrwxrwxrwx 1 root root 11 2011-09-06 02:04 /usr/bin/python3.2 -> python3.2mu -rwxr-xr-x 1 root root 2852896 2011-09-06 02:04 /usr/bin/python3.2mu lrwxrwxrwx 1 root root 16 2011-10-08 19:50 /usr/bin/python-config -> python2.7-config 

es gibt einen symlink python-> python2.7, vielleicht kann ich ln -f -s diesen link zu genauem /usr/Python-2.7.3/python ziel ohne schaden ?? Und wie wird die "Kopie" von 2.7.3 korrekt entfernt? Und sonst...

~$ ls -la /usr/bin/virtualenv  -rwxr-xr-x 1 root root 58 2011-03-16 18:55 /usr/bin/virtualenv 

funktioniert aber nur in diesem Fall:

~$ /usr/bin/python /usr/bin/virtualenv qenv New python executable in qenv/bin/python Installing distribute....................................................................................................................................................................................done. Installing pip...............done. 

und das geht nicht!

 python virtualenv.py pyenv 

Ich werde versuchen, klarer zu sein. Nur Fragen. Warum kann ich numpy importieren, wenn '/ usr / bin / python' gestartet wird, aber nicht nur 'python'? Wenn ich eine andere Version von Python für verschiedene Anwendungen installieren möchte, wie kann ich dies am besten tun? Wie installiere ich Pakete in einem ausgewählten Pythonpfad? Ich habe keine vollständige Anleitung gefunden.


Danke an alle! So wurde es gelöst:

$ sudo nano /usr/share/python/debian_defaults $ sudo mv /usr/bin/python /usr/bin/python2.Y_old $ sudo ln -s -f /usr/bin/python2.7 /usr/bin/python 

Meine Standardversion war 2.7.3 und jetzt ist es 2.7.2+. Ich sehe keinen großen Unterschied, also war es ziemlich sicher. Aber ich muss mehr darüber lesen

Virtualenv

und

pip und default PATH

0
Haben Sie tatsächlich versucht, `/ usr / bin / python` auszuführen und dann die Importe auszuprobieren? Ich sehe keinen Hinweis darauf. Was das Entfernen dieser anderen Version angeht, können Sie sie deaktivieren, indem Sie z. B. sudo mv /usr/Python-2.7.3 / usr / Python-2.7.3-disabled verwenden. Wenn alles weiter funktioniert, wird es mit sudo rm -r / usr / Python-2.7.3-disabled wirklich beseitigt. 9769953 vor 11 Jahren 0
Ja, das Ausführen von / usr / bin / python hat perfekt funktioniert! Numpy erfolgreich importiert. ABER! Ich verstehe immer noch nicht, wie nur eine Python-Version verwaltet wird, wie genau die Version verwendet wird, die ich für ein Programm ausführen muss. boldnik vor 11 Jahren 0
Entfernen Sie entweder die andere Python-Installation (oder verschieben Sie sie besser beiseite), oder stellen Sie sicher, dass in Ihrem PATH `/ usr / bin` * vor *` / usr / local / bin` und anderen (bin) Verzeichnissen stehen enthalten Python. Ihre Shell wählt die erste ausführbare Python-Datei aus, die sie auf Ihrem PATH finden kann. Wenn Sie nicht wirklich wissen, wie Sie das tun, sollten Sie besser eine neue Frage stellen (einschließlich der Auflistung der Inhalte Ihrer `.bashrc`,` .bash_profile` und einiger anderer `.bash *'-Dateien, die Sie benötigen finden. Vorausgesetzt, Sie verwenden `bash` (die Standard-Shell von Ubuntu). 9769953 vor 11 Jahren 0

3 Antworten auf die Frage

3
Pablo Navarro

Ich empfehle Ihnen dringend, virtualenv zu verwenden . Mit Virtualenv können Sie eine Python-Umgebung auf Projektbasis erstellen. Mein Workflow zum Starten eines neuen Projekts ist

  • Erstellen Sie das Projektverzeichnis myapp
  • Laden Sie virtualenv von https://github.com/pypa/virtualenv/tarball/develop herunter
  • Erstellen Sie eine virtuelle Umgebung: python virtualenv.py pyenv
  • Aktivieren Sie die Virtualenv source pyenv/bin/activate
  • Installieren Sie die Pakete in der virtuellen Umgebung:

    pip install -U numpy matplotlib pandas ...

Mit diesem Setup können Sie die Version steuern, die Pakete erneut installieren oder entfernen, ohne sich auf die in den Repositorys verfügbare Version zu verlassen.

Ich habe alle Schritte mit nur einer Ausnahme ausgeführt - es wurde nicht virtualenv.py angezeigt, daher habe ich einen vollständigen Pfad verwendet. Als nächstes werden alle benötigten Pakete installiert, aber es wird immer noch derselbe Fehler angezeigt. Ich verstehe nicht "Pip Freeze" zu machen zeigt alles, was ich bereits installiert habe. boldnik vor 11 Jahren 0
1
Roland Smith

In einem Xubuntu-Forum wird dies wahrscheinlich besser gestellt, da dies höchstwahrscheinlich ein Konfigurationsproblem ist. Ist vielleicht mehr als eine Version von Python installiert?

Geben Sie im Python-Interpreter den folgenden Code ein.

import sys print sys.path 

Stellen Sie sicher, dass das numpy-Verzeichnis in einem der Verzeichnisse installiert ist sys.path.

Auf meinem FreeBSD-System (UNIX-like) mit Python 2.7.3 wird Numpy als Unterverzeichnis von installiert /usr/local/lib/python2.7/site-packages/. Bei Windows ist es wahrscheinlich C:\Python27\Lib\site-packages\.

Wenn Sie z. B. auch einen Python 3.x installiert haben, kann es sein, dass für diesen Python diese Zahl installiert ist. In diesem Fall schauen Sie in /usr/local/lib/python3.x/site-packages/oder C:\Python3x\Lib\site-packages\.

0
Fred Foo

Sie verwenden anscheinend einen benutzerdefinierten Python 2.7.3 in /usr/local/bin. Mit /usr/bin/pythonsollten Sie in der Lage sein import numpy; apt-getinstalliert sich /usraber nie /usr/local.

Danke für die Antwort. Ich habe meinem Beitrag ein Update hinzugefügt. vor 11 Jahren 0
@boldnik: Es gibt keine "deaktivierte" Python-Installation. Geben Sie "which python" ein, um herauszufinden, welchen Sie ausführen, und ändern Sie Ihren "PATH" entsprechend, wenn es nicht der gewünschte ist. Fred Foo vor 11 Jahren 0