ich habe bei meinem ersten Versuch einer Objektorientierten Programmierung ein funktionierendes Pythonscript genommen und es mit Hilfe von Class und def() in einzelteile zerhackt. leider kommt plötzlich eine undefinierbare endlosliste von Fehlermeldungen. Hier ist mal der Quelltext:
Code: Alles auswählen
# -*- coding: cp1252 -*-
import gui_thread
gui_thread.start()
from scipy import plt
from scipy import *
class FileWork:
def __init__(self):
self.f=file('X:/PythonXX/py_arb_dateien/0407.txt', 'r') # Datei Öffnen
self.cols1 = [] #Array definieren
self.cols2 = []
self.cols3 = []
def open(self):
for line in self.f: #Schleife über alle Einträge in Datei
sline = line.split()
try:
v1 = int(sline[0])
v2 = float(sline[1])
v3 = float(sline[2])
self.cols1.append(v1)
self.cols2.append(v2)
self.cols3.append(v3)
except ValueError:
pass
except IndexError:
pass
self.f.close()
def drucken(self):
a=array(self.cols2)
b=array(self.cols3)
tck=interpolate.splrep(a,b,k=2,s=0) #Linien interpolieren
unew=arange(0,20,0.1) #Bereichseinteilung
out=interpolate.splev(a,tck,der=0) #Linien erzeugen
plt.plot(a,b,'x',a,out) #plot
def Tension(self):
return self.cols3
def Place(self):
return self.cols2
def main():
druck=FileWork()
druck.drucken()
if __name__ == '__main__':
main()
1.File auslesen (Listen erzeugen)- funktioniert bisher ohne OOP
2.einen Plot aus zwei der Listen erstellen - funktioniert ohne OOP ebenfalls
3.die beiden gedruckten listen sollen für weitere Berechnungen zur Verfügung stehen (Ziel der Übung)
Kann jemand einem OOP Anfänger da ein paar Tips geben?
Hier ist mal die Fehlermeldung, falls einer Lust hat die zu lesen:
Ich danke schon mal im vorraus falls einer interesse hat mir bei der recht umfangreichen Frage zu helfen.Traceback (most recent call last):
File "C:\Python23\Zerlegung.py", line 3, in ?
gui_thread.start()
File "C:\Python23\lib\site-packages\gui_thread\__init__.py", line 73, in start
wxPython_thread()
File "C:\Python23\lib\site-packages\gui_thread\wxPython_thread.py", line 111, in wxPython_thread
for name in get_extmodules('wxPython',pexec):
File "C:\Python23\lib\site-packages\gui_thread\wxPython_thread.py", line 22, in get_extmodules
assert not sys.modules.has_key(module),\
AssertionError: wxPython is already imported, cannot proceed
EDIT by mawe: Code in Python-tags gesetzt