im Rahmen von Berechnungen speichere ich meine "Ergebnissobjekte" in eine pickle-Datei.
Code: Alles auswählen
with open('resultfile.pkl', 'wb') as output:
pickle.dump(Results1, output, -1)
pickle.dump(Results2, output, -1)
Sowohl Results1 als auch Results2 beinhalten diverse Methoden und daraus resultierend Ergebnisse aus dynamischen Simulationsberechnungen.
Diese Objekte sind jeweils der Klasse ResultNumber zugehörig. Die Datei im Ordner heißt ebenfalls "ResultNumber.py"
Code: Alles auswählen
class ResultNumber(object):
def __init__(self):
self.T = []
…
Code: Alles auswählen
with open('path\to\resultfile.pkl', 'rb') as input:
R1 = pickle.load(input)
R2 = pickle.load(input)
Pickle kann die Ergebnissdatei nur aufrufen, wenn das Script "ResultNumber.py" mit in dem Ordner ist, wo sich auch "Plotting.py" befindet. Ich möchte aber aus Übersichtlichkeitsgründen, dass die beiden Scripte nicht in einem Ordner sind, da meine Ergebnissdatei später noch mehr Results beinhalten soll. Entferne ich "ResultNumber.py" so kommt die Fehlermeldung:
Code: Alles auswählen
R1 = pickle.load(input)
ImportError: No module named ResultNumber
Code: Alles auswählen
import unterordner1.unterordner2.ResultNumber as ResultNumber
Weiß jemand eine Möglichkeit die Module aus Unterordnern reinzuladen, sodass pickle dann das öffnen kann?