Python open: Dateien in Python öffnen

    Avatarbild von Patrick
    Patrick

    veröffentlicht am: 02.06.2020
    zuletzt aktualisiert am: 02.02.2023

    Python open: Dateien in Python öffnen!

    Oftmals müssen wir Daten in Dateien speichern oder aus diesen laden. Für diesen Zweck gibt es die eingebaute Python open Funktion.

    Mit Python open Dateien öffnen

    Die eingebaute Funktion open verfügt über einige Parameter. Allerdings werde ich hauptsächlich die ersten Beiden erläutern, da diese die Wichtigsten sind. Der Erste ist der Name oder Pfad der Datei, die geöffnet werden soll. Der Zweite ist der Modus, in dem mit der Datei gearbeitet werden soll.

    datei = open('datei.txt', 'w')

    Mit dem Modus ‚w‘ kannst du in Dateien schreiben. Zudem wird die angegebene Datei erstellt, wenn sie nicht bereits existiert. Allerdings solltest du daran denken, die Datei mit der Methode close des Objekts wieder zu schließen.

    datei.close()

    Du kannst open stattdessen auch mit dem Schlüsselwort with benutzen, dann wird die Datei automatisch nach dem Codeblock geschlossen.

    with open('datei.txt', 'w') as datei:
        pass
    print(datei.closed)
    # True

    Weiterhin kannst du den Parameter encoding setzen, um die Codierung der Datei anzugeben.

    datei = open('datei.txt', 'r', encoding='utf-8')

    In Dateien schreiben

    Wie bereits zuvor erwähnt, kannst du mit dem Modus w in Dateien schreiben. Dafür kannst du die Methode write des Dateiobjektes verwenden.

    with open('datei.txt', 'w') as datei:
        for i in range(5):
            datei.write(f'{i}: Hi.\n')
    0: Hi.
    1: Hi.
    2: Hi.
    3: Hi.
    4: Hi.

    Allerdings wird mit w die Datei jedes Mal überschrieben. Wenn du stattdessen Zeilen hinzufügen willst, kannst du den Modus a verwenden.

    with open('datei.txt', 'a') as datei:
        for i in range(5, 10):
            datei.write(f'{i}: Hi.\n')
    0: Hi.
    1: Hi.
    2: Hi.
    3: Hi.
    4: Hi.
    5: Hi.
    6: Hi.
    7: Hi.
    8: Hi.
    9: Hi.

    Dateien in Python lesen

    Um Dateien nur zu lesen, kannst du den Modus r angeben. Genau genommen könntest du den Modus komplett weglassen, da r der Standardwert dafür ist. Dazu kannst du die Methode read des Dateiobjektes verwenden.

    with open('datei.txt', 'r') as datei:
        print(datei.read())
    0: Hi.
    1: Hi.
    2: Hi.
    3: Hi.
    4: Hi.
    5: Hi.
    6: Hi.
    7: Hi.
    8: Hi.
    9: Hi.

    Um Dateien Zeile für Zeile zu lesen kannst du readlines verwenden.

    with open('datei.txt', 'r') as datei:
        for line in datei.readlines():
            print(line)

    Fazit – Die Python open Funktion

    Mit der eingebauten Funktion open ist es einfach, neue Dateien zu erstellen. Auch das lesen und schreiben von und in diese Dateien ist mit den verschiedenen Modi sehr einfach. Für eine vollständige Übersicht über alle unterstützten Modi und Parameter von open, sieh dir bitte diesen Abschnitt der Dokumentation an. (https://docs.python.org/3/library/functions.html#open)

    Wenn du noch Fragen, Kommentare, Anregungen oder Anmerkungen hast, dann schreib es bitte in die Kommentare!

    😩 Gelangweilt von den Udemy & YouTube-Tutorials?!

    Lerne spielerisch Python und komme deiner gutbezahlten (und an der 🌴 liegenden) Traumkarriere einen Schritt weiter.

    TP Star TP Star TP Star TP Star TP Star

    "Für Leute die gerne Python oder Java lernen wollen ist Codegree klasse. Ist nicht wie bei anderen Konkurrenten auf Videokursen aufgebaut..."

    - Lennart Sparbier

    100% kostenlos registrieren · keine Kreditkarte notwendig

    👋 Wir warten bereits auf dich!

    Lerne das, was du wirklich brauchst.

    Im Gegensatz zu der Abendschule oder der alteingesessenen Uni lernst du bei codegree die Sprachen & Pakete, die wirklich im Jobmarkt gesucht werden.

    Logo von Python
    Logo von PyTorch
    Logo von Pandas
    Logo von Matplotlib
    Logo von Java
    Logo von NumPy
    Mehr erfahren

    100% kostenlos registrieren · keine Zahlungsdaten notwendig