cPickle ImportError: No module named multiarray
Je suis en utilisant cPickle pour sauvegarder ma Base de données dans le fichier. Le code ressemble à ça:
def Save_DataBase():
import cPickle
from scipy import *
from numpy import *
a=Results.VersionName
#filename='D:/results/'+a[a.find('/')+1:-a.find('/')-2]+Results.AssType[:3]+str(random.randint(0,100))+Results.Distribution+".lft"
filename='D:/results/pppp.lft'
plik=open(filename,'w')
DataOutput=[[[DataBase.Arrays.Nodes,DataBase.Arrays.Links,DataBase.Arrays.Turns,DataBase.Arrays.Connectors,DataBase.Arrays.Zones],
[DataBase.Nodes.Data,DataBase.Links.Data,DataBase.Turns.Data,DataBase.OrigConnectors.Data,DataBase.DestConnectors.Data,DataBase.Zones.Data],
[DataBase.Nodes.DictionaryPy2Vis,DataBase.Links.DictionaryPy2Vis,DataBase.Turns.DictionaryPy2Vis,DataBase.OrigConnectors.DictionaryPy2Vis,DataBase.DestConnectors.DictionaryPy2Vis,DataBase.Zones.DictionaryPy2Vis],
[DataBase.Nodes.DictionaryVis2Py,DataBase.Links.DictionaryVis2Py,DataBase.Turns.DictionaryVis2Py,DataBase.OrigConnectors.DictionaryVis2Py,DataBase.DestConnectors.DictionaryVis2Py,DataBase.Zones.DictionaryVis2Py],
[DataBase.Paths.List]],[Results.VersionName,Results.noZones,Results.noNodes,Results.noLinks,Results.noTurns,Results.noTrips,
Results.Times.VersionLoad,Results.Times.GetData,Results.Times.GetCoords,Results.Times.CrossTheTime,Results.Times.Plot_Cylinder,
Results.AssType,Results.AssParam,Results.tStart,Results.tEnd,Results.Distribution,Results.tVector]]
cPickle.dump(DataOutput, plik, protocol=0)
plik.close()`
Et il fonctionne très bien. La plupart de mes lignes de la Base de données sont des listes de listes, vecor, ou semblable au tableau des ensembles de données.
Mais maintenant quand j'ai des données d'entrée, une erreur se produit:
def Load_DataBase():
import cPickle
from scipy import *
from numpy import *
filename='D:/results/pppp.lft'
plik= open(filename, 'rb')
""" first cPickle load approach """
A= cPickle.load(plik)
""" fail """
""" Another approach - data format exact as in Output step above , also fails"""
[[[DataBase.Arrays.Nodes,DataBase.Arrays.Links,DataBase.Arrays.Turns,DataBase.Arrays.Connectors,DataBase.Arrays.Zones],
[DataBase.Nodes.Data,DataBase.Links.Data,DataBase.Turns.Data,DataBase.OrigConnectors.Data,DataBase.DestConnectors.Data,DataBase.Zones.Data],
[DataBase.Nodes.DictionaryPy2Vis,DataBase.Links.DictionaryPy2Vis,DataBase.Turns.DictionaryPy2Vis,DataBase.OrigConnectors.DictionaryPy2Vis,DataBase.DestConnectors.DictionaryPy2Vis,DataBase.Zones.DictionaryPy2Vis],
[DataBase.Nodes.DictionaryVis2Py,DataBase.Links.DictionaryVis2Py,DataBase.Turns.DictionaryVis2Py,DataBase.OrigConnectors.DictionaryVis2Py,DataBase.DestConnectors.DictionaryVis2Py,DataBase.Zones.DictionaryVis2Py],
[DataBase.Paths.List]],[Results.VersionName,Results.noZones,Results.noNodes,Results.noLinks,Results.noTurns,Results.noTrips,
Results.Times.VersionLoad,Results.Times.GetData,Results.Times.GetCoords,Results.Times.CrossTheTime,Results.Times.Plot_Cylinder,
Results.AssType,Results.AssParam,Results.tStart,Results.tEnd,Results.Distribution,Results.tVector]]= cPickle.load(plik)`
Erreur est (dans les deux cas):
Traceback (most recent call last):
File "D:\programy\projekt_eclipse\src\Praca\wx_frame.py", line 342, in LoadDatabase_Handler
Load_DataBase()
File "D:\programy\projekt_eclipse\src\Praca\wx_frame.py", line 1804, in Load_DataBase
A= cPickle.load(plik)
ImportError: No module named multiarray
Des Idées?
PS. Maintenant, j'ai résolu le problème, disent partiellement :/j'avais besoin de changer le format des tableaux. J'ai essayé de tracer l'erreur, mais je ne pouvais pas. La variable de l'origine erreur est ce (long 🙂 ) :
[[ 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00]
[ 1.00000000e+00 0.00000000e+00 0.00000000e+00 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 0.00000000e+00]
[ 2.00000000e+00 0.00000000e+00 1.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 3.52875186e+04]
[ 3.00000000e+00 0.00000000e+00 2.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.24880978e+04]
[ 4.00000000e+00 0.00000000e+00 3.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.24880978e+04]
[ 5.00000000e+00 0.00000000e+00 4.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.24880978e+04]
[ 6.00000000e+00 0.00000000e+00 5.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.24880978e+04]
[ 7.00000000e+00 0.00000000e+00 6.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.24880978e+04]
[ 8.00000000e+00 0.00000000e+00 7.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 3.59846476e+04]
[ 9.00000000e+00 0.00000000e+00 8.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 0.00000000e+00]
[ 1.00000000e+01 1.00000000e+03 0.00000000e+00 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 3.97583022e+04]
[ 1.10000000e+01 1.00000000e+03 1.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.84929461e+04]
[ 1.20000000e+01 1.00000000e+03 2.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 8.76891311e+03]
[ 1.30000000e+01 1.00000000e+03 3.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 5.10636164e+03]
[ 1.40000000e+01 1.00000000e+03 4.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.45841100e+03]
[ 1.50000000e+01 1.00000000e+03 5.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 4.22093915e+03]
[ 1.60000000e+01 1.00000000e+03 6.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 9.20282091e+03]
[ 1.70000000e+01 1.00000000e+03 7.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.86566159e+04]
[ 1.80000000e+01 1.00000000e+03 8.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 3.80902598e+04]
[ 1.90000000e+01 2.00000000e+03 0.00000000e+00 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.23193676e+04]
[ 2.00000000e+01 2.00000000e+03 1.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.16000116e+04]
[ 2.10000000e+01 2.00000000e+03 2.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 9.05680012e+03]
[ 2.20000000e+01 2.00000000e+03 3.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 6.89123867e+03]
[ 2.30000000e+01 2.00000000e+03 4.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 4.98898168e+03]
[ 2.40000000e+01 2.00000000e+03 5.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 7.44216130e+03]
[ 2.50000000e+01 2.00000000e+03 6.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.23593332e+04]
[ 2.60000000e+01 2.00000000e+03 7.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.14424233e+04]
[ 2.70000000e+01 2.00000000e+03 8.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.91864355e+04]
[ 2.80000000e+01 3.00000000e+03 0.00000000e+00 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.07766798e+04]
[ 2.90000000e+01 3.00000000e+03 1.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 8.61849685e+03]
[ 3.00000000e+01 3.00000000e+03 2.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.09785208e+04]
[ 3.10000000e+01 3.00000000e+03 3.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 8.99736773e+03]
[ 3.20000000e+01 3.00000000e+03 4.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 9.06209122e+03]
[ 3.30000000e+01 3.00000000e+03 5.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 9.48702707e+03]
[ 3.40000000e+01 3.00000000e+03 6.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.04653099e+04]
[ 3.50000000e+01 3.00000000e+03 7.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 6.25314801e+03]
[ 3.60000000e+01 3.00000000e+03 8.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.67608539e+04]
[ 3.70000000e+01 4.00000000e+03 0.00000000e+00 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.07766798e+04]
[ 3.80000000e+01 4.00000000e+03 1.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 6.82241178e+03]
[ 3.90000000e+01 4.00000000e+03 2.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 8.05149043e+03]
[ 4.00000000e+01 4.00000000e+03 3.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 9.55692239e+03]
[ 4.10000000e+01 4.00000000e+03 4.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.19199226e+04]
[ 4.20000000e+01 4.00000000e+03 5.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 8.43876335e+03]
[ 4.30000000e+01 4.00000000e+03 6.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 4.90454231e+03]
[ 4.40000000e+01 4.00000000e+03 7.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 6.03525083e+03]
[ 4.50000000e+01 4.00000000e+03 8.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.67608539e+04]
[ 4.60000000e+01 5.00000000e+03 0.00000000e+00 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.07766798e+04]
[ 4.70000000e+01 5.00000000e+03 1.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 6.07842319e+03]
[ 4.80000000e+01 5.00000000e+03 2.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 6.48191278e+03]
[ 4.90000000e+01 5.00000000e+03 3.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.06547361e+04]
[ 5.00000000e+01 5.00000000e+03 4.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.27500595e+04]
[ 5.10000000e+01 5.00000000e+03 5.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 9.62319628e+03]
[ 5.20000000e+01 5.00000000e+03 6.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 6.50364667e+03]
[ 5.30000000e+01 5.00000000e+03 7.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 6.48651846e+03]
[ 5.40000000e+01 5.00000000e+03 8.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.67608539e+04]
[ 5.50000000e+01 6.00000000e+03 0.00000000e+00 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.16862400e+04]
[ 5.60000000e+01 6.00000000e+03 1.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 9.88311307e+03]
[ 5.70000000e+01 6.00000000e+03 2.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 7.89923519e+03]
[ 5.80000000e+01 6.00000000e+03 3.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 8.16959736e+03]
[ 5.90000000e+01 6.00000000e+03 4.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 6.49942081e+03]
[ 6.00000000e+01 6.00000000e+03 5.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 6.24620368e+03]
[ 6.10000000e+01 6.00000000e+03 6.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 9.27811830e+03]
[ 6.20000000e+01 6.00000000e+03 7.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.13336356e+04]
[ 6.30000000e+01 6.00000000e+03 8.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.91853045e+04]
[ 6.40000000e+01 7.00000000e+03 0.00000000e+00 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 3.67326624e+04]
[ 6.50000000e+01 7.00000000e+03 1.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.79192625e+04]
[ 6.60000000e+01 7.00000000e+03 2.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 9.35835049e+03]
[ 6.70000000e+01 7.00000000e+03 3.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 4.66349011e+03]
[ 6.80000000e+01 7.00000000e+03 4.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.88664273e+03]
[ 6.90000000e+01 7.00000000e+03 5.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 4.15546726e+03]
[ 7.00000000e+01 7.00000000e+03 6.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 9.26420582e+03]
[ 7.10000000e+01 7.00000000e+03 7.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 1.80179725e+04]
[ 7.20000000e+01 7.00000000e+03 8.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 3.69846102e+04]
[ 7.30000000e+01 8.00000000e+03 0.00000000e+00 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 0.00000000e+00]
[ 7.40000000e+01 8.00000000e+03 1.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 3.66207833e+04]
[ 7.50000000e+01 8.00000000e+03 2.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.32529854e+04]
[ 7.60000000e+01 8.00000000e+03 3.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.32529854e+04]
[ 7.70000000e+01 8.00000000e+03 4.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.32529854e+04]
[ 7.80000000e+01 8.00000000e+03 5.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.32529854e+04]
[ 7.90000000e+01 8.00000000e+03 6.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 2.32529854e+04]
[ 8.00000000e+01 8.00000000e+03 7.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 3.70098656e+04]
[ 8.10000000e+01 8.00000000e+03 8.00000000e+03 2.00000000e+01
0.00000000e+00 5.00000000e+02 2.00000000e+01 0.00000000e+00]]
cPickle, ou cornichon sont pas en mesure de le charger. Mais quand je le fais manuellement avec la console, la même structure de fichier ( [[ ]] et tous les formats exactement le même, les valeurs de e+00 format) Alors qu'il fonctionne très bien ??????????? Ce que l'enfer?
De toute façon j'ai résolu le problème en changign format des données :/
OriginalL'auteur Rafal | 2010-06-09
Vous devez vous connecter pour publier un commentaire.
J'ai eu le même problème sur une machine Windows XP avec le Code qui fonctionnait bien sous Linux. Il peut avoir à faire avec les différentes manipulation de texte et les fichiers binaires. Lors de l'écriture des données d'essayer de créer le fichier objet indiquant explicitement que vous voulez le mode binaire, c'est à dire
au lieu de
Qui a fonctionné pour moi.
OriginalL'auteur Kurt
Tout d'abord vérifier si $YOUR_PYTHON_INSTALLATION/lib/python-x.x/site-packages/numpy/core/multiarray.si le fichier existe.
Et il serait très utile que si tu as posté plein de sperme, non seulement le message d'erreur.
OriginalL'auteur zifot
Avez-vous essayé de l'importation de multiarray explicitement? cornichon a besoin de toutes les classes à définir, pour importer les données.
OriginalL'auteur Ryan Ginstrom
Cela peut être causé par git évolution des fins de ligne sur une machine Windows avec autocrlf. Vous remarquerez qu'il ne sera pas un problème jusqu'à ce que vous modifiez les branches ou faire autre chose qui efface et réécrit le fichier sur le disque.
Ajoutez cette ligne à votre
.gitattributes
fichier afin d'éviter une réécriture des fins de ligne dans le texte (mais en fait, binaire!) les achards de fichiers:OriginalL'auteur kb0
Vous devez être à l'aide d'un très vieux Python. Parce que " l'importation *' n'est disponible au niveau du module. De toute façon, pour répondre à votre question:
Déplacer ces déclarations
de la Load_DataBase définition et vous serez amende. L'exception a été soulevée parce que cPickle ne pouvez pas trouver le méta-informations pour le contenu de scellé.
OriginalL'auteur luanjunyi