MicroPython: Dateien speichern, lesen und löschen
MicroPython enthält Funktionen, um Daten speichern, lesen, und löschen zu können. Auf einem Raspberry Pi Pico kann man dann wie überall mit Dateien arbeiten und Daten speichern und lesen.
Der Raspberry Pi Pico hat dazu einen Flash-Speicher in dem man nicht nur Programme und Bibliotheken, sondern auch Benutzer-definierte Dateien speichern und verwalten kann.
Folgende Dateioperationen wollen wir durchführen:
- Dateien im aktuellen Verzeichnis anzeigen lassen
- Datei erstellen und schreiben (Daten speichern)
- Datei lesen (Daten laden)
- Datei prüfen
- Datei löschen
- Datei laden mit IMPORT
Dateien im aktuellen Verzeichnis anzeigen lassen
Die Ausgabe der Dateien im gewählten Verzeichnis erfolgt als Liste.
import os filelist = os.listdir('/') print(filelist)
Datei erstellen und schreiben
Das Erstellen oder Schreiben einer Datei ist eigentlich die selbe Funktion. Wie genau die Datei beim Schreiben behandelt wird, wird durch einen zweiten Parameter definiert. Wichtig ist, wenn die Datei nicht vorhanden ist, dann wird sie bei den Parametern „a“ und „w“ neu erstellt. Ist die Datei schon vorhanden, dann unterscheiden sich die beiden Parameter in ihrer Funktion. Bei „a“ werden die Daten einfach am Ende der Datei angehängt. Bei „w“ wird der Inhalt der Datei einfach überschrieben.
import os file = open('testfile.txt', 'a') file.write('1' + "\n") file.close()
Hinweis: Du kannst den Programmcode auch mehrmals hintereinander ausführen. Es wird jeweils eine „1“ mit einem Zeilenumbruch in die Datei geschrieben.
Datei lesen
Die oben erstellte und von Dir mehrmals geschriebene Datei kannst Du hiermit lesen und Dir den Inhalt anzeigen lassen.
import os file = open('testfile.txt', 'r') print(file.read()) file.close()
Datei prüfen
Gegebenenfalls möchte man nur prüfen, ob eine bestimmte Datei überhaupt existiert bzw. vorhanden ist. Also ohne sie zu lesen oder zu beschreiben.
import os if 'testfile.txt' in os.listdir(): print ('Die Datei existiert') else: print('Die Datei existiert NICHT')
Datei löschen
Eine Datei die nicht mehr gebraucht wird, kann auch gelöscht werden.
import os os.remove('testfile.txt')
Hinweis: Wenn die Datei auf diese Weise gelöscht wird, dann verschwindet sie aus dem Dateisystem. Das bedeutet, dass die Datei und die Daten weg sind. Mit Bordmitteln wird man diese Datei nicht wiederherstellen können.
Datei laden mit IMPORT
Zum Schluss noch ein Schmankerl. Etwas für ganz Ausgefuchste. Denn in Dateien speichert man vielleicht nicht einfach nur Daten, sondern Konfigurationen oder Einstellungen, die man bei einem Neustart nicht wieder erneut eingeben oder einstellen will. Und diese Einstellungen braucht man dann natürlich als Inhalt einer Variable.
Mit dem Kommando „import“ wird die Datei nicht einfach nur gelesen, sondern deren Inhalt als Programmcode eingelesen. Diese Datei kann auch dynamisch geändert werden, so das sie bei einem Neustart aktuelle Werte enthält.
try: import config print('Datei wurde erfolgreich importiert') a = config.ab[0] b = config.ab[1] except: print('Datei existiert noch nicht und muss erstellt werden') a = 'aaaaa' b = 'bbbbb' file = open('config.py', 'w') file.write('ab = ["' + a + '", "' + b + '"]') file.close() print() print(a) print(b)
Weitere verwandte Themen:
- Raspberry Pi Pico: Speicher
- Raspberry Pi Pico: MicroPython
- Raspberry Pi Pico: Programmieren mit MicroPython
- Raspberry Pi Pico: Grundlegende Befehle von MicroPython
- MicroPython: Datum und Uhrzeit lesen und ausgeben
- MicroPython: Zufall und Zufallszahlen ausgeben
- MicroPython: Taktrate ändern
Frag Elektronik-Kompendium.de
Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython
Das Elektronik-Set Pico Edition ist ein Bauteile-Sortiment mit Anleitung zum Experimentieren und Programmieren mit MicroPython.
- LED: Einschalten, ausschalten, blinken und Helligkeit steuern
- Taster: Entprellen und Zustände anzeigen
- LED mit Taster einschalten und ausschalten
- Ampel- und Lauflicht-Steuerung
- Elektronischer Würfel
- Eigene Steuerungen programmieren
Online-Workshop: Programmieren mit dem Raspberry Pi Pico
Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.
Für Ihre Fragen zu unseren Online-Workshops mit dem Raspberry Pi Pico besuchen Sie unseren PicoTalk (Online-Meeting). (Headset empfohlen)