Controllando su internet, ho trovato questo
Un modello comune in Python 2.x è avere una versione di un modulo implementata in puro Python, con una versione accelerata opzionale implementata come estensione C; ad esempio, pickle e cPickle.
Ciò pone l'onere di importare la versione accelerata e ricadere sulla versione Python pura su ciascun utente di questi moduli. In Python 3.0, le versioni accelerate sono considerate dettagli di implementazione delle versioni Python pure.
Gli utenti dovrebbero sempre importare la versione standard, che tenta di importare la versione accelerata e ricade nella versione Python pura. La coppia pickle / cPickle ha ricevuto questo trattamento. Il modulo del profilo è nell'elenco per 3.1. Il modulo StringIO è stato trasformato in una classe nel modulo io.
Il che significa che in Python3 si presenta come una libreria...
import _pickle as cPickle
Aggiorna
Come Invapid inserisce nei commenti qui sotto, questa è simile alla risposta sopra
from six.moves import cPickle
Puoi usare:
pip install pickle-mixin
cPickle
fa parte della libreria standard di Python; non lo installi con pip
. In Python 2, viene installato con Python. In Python 3, citando le note di rilascio con maggiore enfasi:
Un modello comune in Python 2.x è avere una versione di un modulo implementata in puro Python, con una versione accelerata opzionale implementata come estensione C; ad esempio, pickle e cPickle. Ciò pone l'onere di importare la versione accelerata e ricadere sulla versione Python pura su ciascun utente di questi moduli. In Python 3.0, le versioni accelerate sono considerate dettagli di implementazione delle versioni Python pure. Gli utenti dovrebbero sempre importare la versione standard, che tenta di importare la versione accelerata e torna alla versione Python pura. La coppia pickle / cPickle ha ricevuto questo trattamento.
Nel caso specifico del tentativo di installare cpickle
con pip, alcuni Pythonista hanno deciso di informare le persone che questa era la cosa sbagliata da fare e quindi hanno registrato il cpickle
project (insieme a numerosi altri che prendono il nome da moduli di libreria standard) e gli diede un setup.py
questo non farebbe altro che uscire con l'errore "Package 'cpickle' must not be downloaded from pypi
". Tuttavia, qualcosa sembra essere andato storto durante la creazione del pacchetto oppure da parte di PyPI che ha causato la malformazione del file di distribuzione di origine, causando l'errore che vedi qui. Pertanto, anche se questo errore fosse corretto, tu' d continua a ricevere un errore diverso che ti dice di non fare quello che stai cercando di fare.