Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
max793
User
Beiträge: 58 Registriert: Montag 11. Mai 2009, 10:05
Donnerstag 8. Oktober 2009, 12:19
hallo zusammen ich habe ein Problem ich will in einer KLasse einen File- wächter programmieren aber irgendwie klappt das nicht!!!
Er springt irgendwie über mein while und macht nicht das was ich will!!!
Wo könnte da der fehler sein????
Code: Alles auswählen
class CL_OPT_MAT:
# Funktionen:
def __init__(self):
self.MATLAB_Pfad = "C:/python_ms/"
self.VAR__Warten = "test.txt"
def Warten_Auf_Geloeschte_Daten(self):
while os.path.exists(os.path.koin(self.MATLAB_Pfad , self.VAR__Warten)):
time.sleep(2)
def sovler_finshed(self):
self.Warten_Auf_Geloeschte_Daten()
##
## ******************************************************************************
##
##
## ******************************************************************************
##
if (__name__ == '__main__'):
clOpt = CL_OPT_MAT()
clOpt.sovler_finshed()
max793
User
Beiträge: 58 Registriert: Montag 11. Mai 2009, 10:05
Donnerstag 8. Oktober 2009, 12:28
danke ein tippfehler von mir
Aber ich habe es auch schon ohne join probiert und auch das funktioniert nicht!!!!! irgendwas passt da nicht!!!!
jbs
User
Beiträge: 953 Registriert: Mittwoch 24. Juni 2009, 13:13
Wohnort: Postdam
Donnerstag 8. Oktober 2009, 12:33
Code: Alles auswählen
import os.path
import time
class CL_OPT_MAT:
def __init__(self):
self.MATLAB_Pfad = "./"
self.VAR__Warten = "test.txt"
def Warten_Auf_Geloeschte_Daten(self):
while os.path.exists(os.path.join(self.MATLAB_Pfad , self.VAR__Warten)):
time.sleep(2)
def sovler_finshed(self):
self.Warten_Auf_Geloeschte_Daten()
if (__name__ == '__main__'):
clOpt = CL_OPT_MAT()
clOpt.sovler_finshed()
also bei mir funktioniert das.
wie äußert sich denn das "nicht funktionieren"?
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
Pekh
User
Beiträge: 482 Registriert: Donnerstag 22. Mai 2008, 09:09
Donnerstag 8. Oktober 2009, 12:34
Probiers mal mit weniger Ausrufezeichen
Du läßt den Code wirklich exakt so laufen, wie dort steht? Gibt es eine Fehlermeldung?
max793
User
Beiträge: 58 Registriert: Montag 11. Mai 2009, 10:05
Donnerstag 8. Oktober 2009, 12:35
er wartet nicht!!! er für die Funktion aus, wenn ich sage er soll was ausschreiben macht er es nur das timesleep oder die schleife machen da probleme
jbs
User
Beiträge: 953 Registriert: Mittwoch 24. Juni 2009, 13:13
Wohnort: Postdam
Donnerstag 8. Oktober 2009, 12:38
ich hab nichts verstanden
hast du eine fehlermeldung oder ähnliches?
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
cofi
Python-Forum Veteran
Beiträge: 4432 Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0
Donnerstag 8. Oktober 2009, 12:44
Schade .. ich haette jetzt auf einen Exclamation Overflow getippt.
jbs
User
Beiträge: 953 Registriert: Mittwoch 24. Juni 2009, 13:13
Wohnort: Postdam
Donnerstag 8. Oktober 2009, 12:49
max793 hat geschrieben: flaschen pfaden
defnull nennt das bei sich routes
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
Hyperion
Moderator
Beiträge: 7478 Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:
Donnerstag 8. Oktober 2009, 12:51
Was ich mich ja frage ist das hier:
Wenn der OP sich da nicht nur mit der Terminilogie geirrt hat, trifft es doch den Kern: Wozu diese Klasse?
Oder in der Sprache des OP:
Wozu diese Klasse???
Die ist hier komplett unnötig!!!
SCNR
/me
User
Beiträge: 3556 Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn
Donnerstag 8. Oktober 2009, 13:23
max793 hat geschrieben: gott muss ich mich nun schämen!!!! ich habe immer mit den flaschen pfaden das gemacht!!!!!!!!!
Bei "flaschen pfaden" bietet sich der Einsatz von Bottle an.
Seeker
User
Beiträge: 70 Registriert: Mittwoch 16. September 2009, 19:52
Donnerstag 8. Oktober 2009, 15:14
Ich kenne das Endziel des Codes nicht, aber weshalb eigentlich nicht einfach so (falls du schlussendlich mehrere Pfade aufrufen möchtest, etc.)?:
Code: Alles auswählen
def datei_pfad():
MATLAB_pfad = "C:/python_ms/"
VAR_warten = "test.txt"
return MATLAB_pfad, VAR_warten
def warten_auf_geloeschte_daten(stamm, datei):
while os.path.exists(os.path.join(stamm, datei)):
time.sleep(2)
print "Daten gelöscht"
def main():
stamm, datei = datei_pfad()
warten_auf_geloeschte_daten(stamm, datei)
if __name__ == "__main__":
main()
Oder wenn es bei einer zuvor definierten Datei bleibt:
Code: Alles auswählen
def main():
MATLAB_pfad = "C:/python_ms/"
VAR_warten = "test.txt"
while os.path.exists(os.path.join(MATLAB_pfad, VAR_warten)):
time.sleep(2)
print "Daten gelöscht"
if __name__ == "__main__":
main()
lg, Seeker
Hyperion
Moderator
Beiträge: 7478 Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:
Donnerstag 8. Oktober 2009, 15:31
Seeker hat geschrieben: Ich kenne das Endziel des Codes nicht, aber weshalb eigentlich nicht einfach so (falls du schlussendlich mehrere Pfade aufrufen möchtest, etc.)?:
Ich halte Deinen Code nicht für unbedingt sinnvoll. Wieso eine Funktion schreiben, die eh nur Konstanten zurückliefert? Aber das ganze ohne Klassen zu lösen ist nach Stand der Dinge in der Tat einfacher.
Ich würde es wenn so machen (ungetestet):
Code: Alles auswählen
BASE_PATH = r"C:/python_ms/"
FILENAMES = [r"test.txt"]
def wait_for_remove(filename):
while os.path.exists(filename):
time.sleep(2)
print "Daten gelöscht"
def main():
for filename in FILENAMES:
wait_for_remove(os.path.join(BASE_PATH, filename))
Defnull
User
Beiträge: 778 Registriert: Donnerstag 18. Juni 2009, 22:09
Wohnort: Göttingen
Kontaktdaten:
Donnerstag 8. Oktober 2009, 16:20
jbs hat geschrieben: max793 hat geschrieben: flaschen pfaden
defnull nennt das bei sich routes
*LOL* YMMD
!!!!!!!!