Vom Terminal ... kann das Python-Paket nicht entfernen (nicht lokalisierbar), kann auch nicht installiert werden (bereits zufrieden)

1

Ich verwende Linux Mint 18 Sarah.

Ich habe versucht, eine .pyDatei mit einer Pygame-Abhängigkeit auszuführen, also habe ich pipPygame in meine virtuelle (Conda) Python-Umgebung installiert. So weit, ist es gut. Getestet, dass ich, wenn ich mein System-Python durch Eingeben der pythonShell import pygameeingebe, einige Pygame-Objekte fehlerfrei erstellen kann.

Aber beim Laufen python my_script.py(mit der Pygame-Abhängigkeit) habe ich einen seltsamen Fehler bekommen.Fatal Python error: (pygame parachute) Segmentation Fault Aborted

Jemand schlug vor, Pygame zu deinstallieren und neu zu installieren. Hier wird es für mich sehr verwirrend.

Als ich zur Deinstallation ging, bekam ich die Nachricht E: Unable to locate package pygame. Aber wenn ich es pip installerneut versuche , erhalte ich die Nachricht Requirement already satisfied: pygame in /home/max/anaconda3/envs/udacity_ml_nd/lib/python2.7/site-packages.

Kann jemand erklären, warum Python dieses Paket in derselben Terminalsitzung in derselben virtuellen Umgebung (Conda-Umgebung) sowohl finden kann als auch nicht? Bitte lassen Sie mich wissen, wenn ich weitere Informationen liefern kann.

Maximale Kraft
quelle
danke, aber pip install -U pygamezeigtRequirement already up-to-date: pygame in /home/max/anaconda3/envs/udacity_ml_nd/lib/python2.7/site-packages
Max Power
1
Danke noch einmal. deinstalliert und neu installiert haben aber den gleichen Fehler.
Max Power

Antworten:

0

was bei mir gelandet ist war:

  • Deinstallation mit beiden conda uninstallundpip uninstall

    • Ordnung schien hier eine Rolle zu spielen. Ich glaube, ich pip uninstallkonnte nicht arbeiten, bis ich zum ersten Mal conda uninstallredigierte, oder vielleicht habe ich das rückwärts.
  • Terminal schließen und meine Conda Virtual Environment erneut betreten ( source activate my_env-name)

  • pip install pygame(NICHT conda install pygame, das hat Probleme verursacht)

Lektion gelernt

Ich hatte ein Pygame mit Conda und Pip installiert, was wahrscheinlich eine ziemlich schlechte Idee für jedes Paket war. Vermutlich sollte Plan B in der Zukunft, wenn nach der Installation mit pip oder conda etwas nicht funktioniert, zuerst mit pip oder conda deinstalliert werden, bevor mit dem anderen erneut installiert wird. Wahrscheinlich hätte das schon gewusst ...

Maximale Kraft
quelle
Verwenden Sie nicht beide pip und conda. Verwenden Sie nur, condawenn Sie Anaconda haben. Verwenden Sie nur, pipwenn Sie den "normalen" CPython haben.
Satō Katsura
Danke, obwohl in diesem Fall das Skript, das ich ausführen muss, funktioniert, wenn ich Pygame alleine installiere, aber nicht, wenn ich Pygame alleine installiere, obwohl ich Anaconda habe. Ich arbeite an einem UDACITY-Projekt und es gibt ein Forum voller Leute, die anscheinend dasselbe Problem hatten. Aber vielleicht liegt es daran, dass ich einige Abhängigkeiten habe, die ich vorher mit pip anstelle von conda installiert habe?
Max Power
Ihr Problem scheint zu sein, dass Sie sowohl Anaconda als auch (C) Python installiert haben und versuchen, Pakete von einem zum anderen zu verwenden. Sie mischen sich nicht gut. Nun, ich habe keine Ahnung, wie Ihre Distribution damit umgehen soll, wenn überhaupt. Aber wie gesagt, condaverwaltet Anaconda-Pakete und pipverwaltet "normale" Python-Pakete. Das Installieren einiger Pakete mit dem einen und einiger mit dem anderen bringt Ihnen nichts.
Satō Katsura
Danke für das Follow-up. Ich bin mir ziemlich sicher, dass ich Python mit Ausnahme der Anaconda-Distribution nie "installiert" habe, daher schätze ich, dass es sich bei dem (C) Python, den ich installiert habe, nur um meinen Systempython handelt. Ich sollte das vermutlich nicht deinstallieren, oder? Ich bin mir immer noch nicht sicher, warum das udacity-Skript, das ich ausführen muss, nicht richtig funktioniert, wenn ich pygame in meinem conda virtualenv installiere, aber es funktioniert, wenn ich es in diesem virtualenv pip installiere. Aber ich verstehe das eindeutig nicht so gut.
Max Power