Hallo
ich bin auf der suche nach einen File watcher, der kontolliert ob eine Datei vorhanden ist oder nicht. Wenn diese Datei vorhanden ist dann soll er warten ansonsten soll er sich schließen.
Da ich glaube da es nicht sowas hier existiert muss ich nun mir selber einen programmieren. (macht auch nichts ist ja eine Übung;-) gerade für anfänger
was ich nun wissen wollte ist, ist es hier sinnvoll mit einer for- Schleife und immer wieder abfragen ob diese Datei da ist oder sollte man einen anderen weg nehmen. es sollte ein sehr einfaches Programm sein das wenige resorcen benötigt!
File watcher!
hallo ich habe nun das kleine Problem mit einer for-schleife lösen wollen jedoch weiß ich nicht woran es diesmal scheitert!
was sagt ihr dazu!
was sagt ihr dazu!
Code: Alles auswählen
import os
import time
import os.path
datei = "test.txt"
for datei in os.path.exists("C:/user/python_uebungsfile/"):
time.sleep(0.5)
print "die Berechnung ist zu ende"
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
``os.path.exists`` gibt kein Iterable zurück, sonden einen simplen Wert, nämlich ``True`` oder ``False`` daher kann man über den Wert nicht iterieren. Was du suchst ist eher eine ``while``-Schleife.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
also so wirds nicht klappen...
das sollte gehen:
Du versuchst da über nen bool-wert zu iterieren.
Edit: zu spät
das sollte gehen:
Code: Alles auswählen
import os
import time
datei = "test.txt"
while os.path.exists(os.path.join(os.getcwd(), datei)):
time.sleep(0.5)
Edit: zu spät

Hallo
ich habe nun deinen Vorschlag mir angesehen und ausprobiert (DANKE). jedoch ist das Programm noch nicht so wie ich es haben möchte. denn aus irgend einen Grund führt er mir die while schleife nicht aus und beendet sofort das Programm was er ja nicht tun soll. Erst nach dem die Datei gelöscht wurde soll er das Programm beenden. ich weiß nun nicht mehr wo das Problem liegt!!
Danke
ich habe nun deinen Vorschlag mir angesehen und ausprobiert (DANKE). jedoch ist das Programm noch nicht so wie ich es haben möchte. denn aus irgend einen Grund führt er mir die while schleife nicht aus und beendet sofort das Programm was er ja nicht tun soll. Erst nach dem die Datei gelöscht wurde soll er das Programm beenden. ich weiß nun nicht mehr wo das Problem liegt!!
Danke
Code: Alles auswählen
import os
import time
import os.path
datei = "C:\user\python_uebungsfile\test.txt"
while os.path.exists(datei):
time.sleep(20)
print "die Berechnung ist zu ende"
hallo nochmals
ich habe mir das nochmals angeshen und bin drauf gekommen, das ich immer eine datei gewählt habe dich ich immer wieder aus dem mülleimer geholt habe vielleicht war das der grund für das scheitern.
Aber was ich nun überhaupt nicht versteh, sind die letzten beiden Einträge was bedeutet Raw-Strings und wie wirkt sich das auf mein kleines programm aus? danke für die mühe
ich habe mir das nochmals angeshen und bin drauf gekommen, das ich immer eine datei gewählt habe dich ich immer wieder aus dem mülleimer geholt habe vielleicht war das der grund für das scheitern.
Aber was ich nun überhaupt nicht versteh, sind die letzten beiden Einträge was bedeutet Raw-Strings und wie wirkt sich das auf mein kleines programm aus? danke für die mühe
siehe:Leonidas hat geschrieben:Du hast den falschen Pfad, das ``\t`` im String fügt dir ein Tab ein.
Code: Alles auswählen
datei = "C:\user\python_uebungsfile\test.txt"
>>> print datei
C:\user\python_uebungsfile est.txt
Code: Alles auswählen
>>> os.path.join('C:','user','python_uebungsfile','test.txt')
'C:user\\python_uebungsfile\\test.txt'