GNU/Linux >> LINUX-Kenntnisse >  >> Linux

pip install pickle funktioniert nicht - keine solche Datei oder kein Verzeichnis

Als ich im Internet nachgeschaut habe, habe ich das hier gefunden

Ein gängiges Muster in Python 2.x besteht darin, eine Version eines Moduls in reinem Python zu implementieren, mit einer optionalen beschleunigten Version, die als C-Erweiterung implementiert wird; zum Beispiel pickle und cPickle.

Dies legt jedem Benutzer dieser Module die Last auf, die beschleunigte Version zu importieren und auf die reine Python-Version zurückzugreifen. In Python 3.0 gelten die beschleunigten Versionen als Implementierungsdetails der reinen Python-Versionen.

Benutzer sollten immer die Standardversion importieren, die versucht, die beschleunigte Version zu importieren, und auf die reine Python-Version zurückgreift. Das Pickle/cPickle-Paar erhielt diese Behandlung. Das Profilmodul steht auf der Liste für 3.1. Das StringIO-Modul wurde in eine Klasse im io-Modul umgewandelt.

Was bedeutet, dass es in Python3 als Bibliothek kommt ...

import _pickle as cPickle

Aktualisieren

Wie Invapid in den Kommentaren unten angibt, ähnelt diese der obigen Antwort

from six.moves import cPickle

Sie können Folgendes verwenden:

pip install pickle-mixin

cPickle ist Teil der Standardbibliothek von Python; Sie installieren es nicht mit pip . In Python 2 wird es mit Python installiert. In Python 3 die Versionshinweise mit zusätzlicher Hervorhebung zitieren:

Ein gängiges Muster in Python 2.x besteht darin, eine Version eines Moduls in reinem Python zu implementieren, mit einer optionalen beschleunigten Version, die als C-Erweiterung implementiert wird; zum Beispiel pickle und cPickle. Dies legt jedem Benutzer dieser Module die Last auf, die beschleunigte Version zu importieren und auf die reine Python-Version zurückzugreifen. In Python 3.0 gelten die beschleunigten Versionen als Implementierungsdetails der reinen Python-Versionen. Benutzer sollten immer die Standardversion importieren, die versucht, die beschleunigte Version zu importieren, und auf die reine Python-Version zurückgreift. Das Pickle/cPickle-Paar erhielt diese Behandlung.

In dem speziellen Fall, dass versucht wird, cpickle zu installieren mit pip entschied sich ein Pythonista, die Leute darüber zu informieren, dass dies das Falsche war, und registrierte daher den cpickle project (zusammen mit zahlreichen anderen, die nach Standardbibliotheksmodulen benannt sind) und gab ihm einen setup.py das würde nur mit dem Fehler „Package 'cpickle' must not be downloaded from pypi beendet werden ". Es scheint jedoch etwas schief gelaufen zu sein, entweder beim Erstellen des Pakets oder auf der Seite von PyPI, was dazu geführt hat, dass die Quelldistributionsdatei fehlerhaft ist, was zu dem hier angezeigten Fehler geführt hat. Daher, selbst wenn dieser Fehler behoben wurde, Sie' d immer noch eine andere Fehlermeldung, die Sie auffordert, nicht das zu tun, was Sie tun möchten.


Linux
  1. Python – Keine solche Datei oder Verzeichnis, aber ich kann es sehen!?

  2. Mkdir:Verzeichnis kann nicht erstellt werden:Keine solche Datei oder Verzeichnis?

  3. „x86_64-conda_cos6-linux-gnu-gcc“ kann nicht ausgeführt werden:Keine solche Datei oder dieses Verzeichnis (Pysam-Installation)

  4. pip konnte keine Version finden, die die Anforderung django==2.2.1 erfüllt

  5. warum funktioniert sftp rmdir nicht?

So verwalten Sie Python-Pakete mit PIP

So installieren Sie Python 3.x und PIP 3 auf Ubuntu 20.04 LTS

Fehler:Tcl.h nicht gefunden (keine solche Datei oder Verzeichnis)?

So installieren Sie Python PIP unter Ubuntu 18.04

ImportError:libcblas.so.3:Shared-Object-Datei kann nicht geöffnet werden:Keine solche Datei oder Verzeichnis

touch:kann `foo' nicht berühren:Keine solche Datei oder Verzeichnis