Wenn man mit Python ein wenig rumspielt, dann kommt man sehr schnell zum Punkt wo man gerne Daten abspeichern möchte, damit man diese später weiterverwenden kann. Dafür kann man Daten in Datenbanken eintragen oder als JSON Files oder Online abspeichern – alles ist möglich. Manchmal ists aber praktisch wenn man die Daten in einer Datei abspeichert.

Heute möchte ich euch mal zeigen, wie man in Python so eine Datei erstellen und füllen kann und zwar mit einer Liste.

Ich arbeite hier mit ≪pickle≫

Liste in Pyhton als .dat abspeichern

Zuerst wird eine Liste erstellt und in der data Variable abgespeichert und dann trage ich sie in die list.dat File ein und zwar als binärer Code.

1
2
3
4
5
6
7
8
import pickle
 
#liste ertellen
data = ["eric", "remo", "matthias"]
 
#save the list
pickle.dump(data, open("list.dat", "wb"))
print(".dat file erstellt")

.dat File auslesen und anzeigen

In diesem Beispiel werde ich nun die list.dat File auslesen und in eine Variable abspeichern und dann anzeigen lassen.

1
2
3
4
5
6
7
8
9
10
import pickle
 
#lade list.dat inhalt in die variable data
data = pickle.load(open("list.dat", "rb"))
 
#liste anzeigen
print("inhalt: ", data)
 
#ausgeben wie viele elemente in der Liste sind
print("länge: ", len(data))

Neuer Wert abfragen und in .dat File abspeichern

Hier wirds ein wenig komplizierter. Zuerst öffne ich die Datei list.dat und speichere die Daten in eine Variable ab. Danach gebe verlangt das Script eine Eingabe, die dann mit der alten Liste kombiniert wird und danach wird alles wieder in die list.dat Datei abgespeichert.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import pickle
 
#neuer wert abfragen
new_wert = input("Neuer Name: ")
 
#load daten aus list.dat
old_list = pickle.load(open("list.dat", "rb"))
 
#inhalt der list.dat mit der neuen eingabe erweitern
old_list.append(new_wert)
 
pickle.dump(old_list, open("list.dat", "wb"))
print(".dat file erstellt")
 
print("Inpurtwert: ", new_wert)
print("Neuer Liste: ", old_list)

Fazit

So läuft as also, mit pickle kann man sehr vieles machen und so eine Daten abspeichern und laden Aktion ist eigentlich gar nicht so schwer zu programmieren. Übrigens die .dat Abkürzung könnt ihr auch mit was anderem ersetzen .help oder .data oder so. Ich persönlich speichere sowas aber immer als .dat ab weil das irgendwie Standard ist in der Programmierung.