Seite 1 von 1

Fragen ob Textdatei erweitert wurde, dann Schleife laufen la

Verfasst: Freitag 24. Juli 2015, 11:55
von Jonny550
Hallo,

ich möchte gerne, das mein Programm ständig abfragt, ob in einer Textdatei etwas hinzugefügt wurde und wenn dies geschehen ist, soll meine Schleife einmal durchlaufen und die beiden Werte anhängen. Anschließend wird wieder gefragt, ob was neues dazu kommt.
So möchte ich gerne das unten stehenden Programmschnippsel weiterentwickeln. Zur Zeit wird die Messung jede Sekunde ausgefüht, bis ich dies unterbreche.

Code: Alles auswählen

def main():
  try:
    Pfad = "/vonPi/Messwerte/"+"MesswerteTest.txt"+"_"+Zeitstempel
    file_out = open(Pfad,"a") # w=ueberschreiben, a=anhaengen der Daten, r=lesen
    while True:
      Distance1 = MeasureDistance1()
      print("gemessene Distanz1 = %.4f m" % Distance1)
      file_out.write("d1 %.4f m     " % Distance1)

      Distance2 = MeasureDistance2()
      print("gemessene Distanz2 = %.4f m" % Distance2)
      file_out.write("d2 %.4f m\n" % Distance2)

      if open(Pfad,"r")>:
        

      time.sleep(1) # Wiederholung der Messung in Sek.

  # reset GPIO settings if user pressed Ctrl+C
  except KeyboardInterrupt:
    print("Measurement stopped by user")
    GPIO.cleanup()

Danke schonmal für eure Hilfe!!

Re: Fragen ob Textdatei erweitert wurde, dann Schleife laufe

Verfasst: Freitag 24. Juli 2015, 19:36
von Dav1d
Du kannst mit inotify bzw. dem Python Binding die Datei überwachen, falls das Event kommt, dass sich die Datei geändert hat, kannst du darauf reagieren.

Re: Fragen ob Textdatei erweitert wurde, dann Schleife laufe

Verfasst: Freitag 24. Juli 2015, 21:29
von cofi
Neben inotify kannst du noch die Modification Time mtime vergleichen. Zugriff hast du beispielsweise per `os.path.getmtime`.

Re: Fragen ob Textdatei erweitert wurde, dann Schleife laufe

Verfasst: Freitag 24. Juli 2015, 23:01
von jens
Und es gehört nicht in "Codesnippets" weil es eine Frage ist und kein Code den anderen nutzten können :wink:

Ich verschiebe das mal...

Re: Fragen ob Textdatei erweitert wurde, dann Schleife laufe

Verfasst: Sonntag 26. Juli 2015, 20:30
von Sirius3
@Jonny550: wer schreibt denn in diese Datei? Ist es wirklich wichtig, dass die neu hinzugekommenen Zeilen sofort verarbeitet werden? Die Einrückung ist immer 4 Leerzeichen, Variablen werden klein_mit_unterstrich geschrieben. Geöffnete Dateien müssen auch wieder geschlossen werden.