Reden wir über Datei I oh, was ich meine, Sie werden das oft in der Programmierung sehen.
IO steht für Input Output.
Sie sehen, Maschinen kommunizieren meistens nicht in nur einer Umgebung, zum Beispiel haben wir bisher unseren
Code in beispielsweise einem Editor wie Sublime Text, den ich hier habe, oder PAE Charm
oder einem Online-Reppel geschrieben.
Aber normalerweise möchten Sie mit verschiedenen Teilen des Systems interagieren.
Vielleicht möchten Sie mit einer anderen Website sprechen.
Vielleicht möchten Sie mit etwas sprechen, das sich auf Ihrem Desktop befindet, vielleicht mit einer Datei, vielleicht kommunizieren
zwei verschiedene Maschinen miteinander.
Vielleicht sprechen Sie mit einer Datenbank.
Ich meine einfach, hey, ich möchte, dass Sie etwas von der Außenwelt eingeben und etwas in die Außenwelt
ausgeben.
Und eine der gebräuchlichsten Methoden, wie wir Dinge wie IO verwenden, ist das Lesen von Dateien. Denken Sie vielleicht an Python
und wie wäre es nicht schön, wenn wir vielleicht ein Skript schreiben könnten, das Bilder komprimiert, während wir IO
brauchen, dann muss ich es tun Geben Sie ein Bild ein und dann muss ich das komprimierte aktualisieren.
Bild.
Vielleicht möchte ich mit einer PDF-Datei arbeiten und vielleicht allen meinen PDF-Seiten ein Wasserzeichen hinzufügen.
Nun, dann geben wir ein PDF ein und geben eine neue Version eines PDFs aus.
Dies ist also eine sehr häufige Aufgabe, die wir häufig sehen.
Und das Lesen und Schreiben von Dateien ist ein sehr wichtiges Werkzeug in unserem Werkzeuggürtel.
Und übrigens, wir haben ein Projekt, bei dem wir dies tatsächlich mit PDF verwenden werden.
Aber wie können wir diese Dateieingabeausgabe vorerst mit Python durchführen?
Nun, Python hat eine eingebaute Funktion, die es uns ermöglicht, Dateien zu öffnen und in sie zu schreiben.
Und es heißt einfach open, nice and easy, also mit open können wir so etwas machen, ich kann
eine Beispieltextdatei auf unserem Desktop erstellen, also werde ich hier mein Terminal verwenden.
Wenn wir uns also das aktuelle Arbeitsverzeichnis ansehen, befinde ich mich auf einem Desktop, wenn Sie Windows verwenden, müssen
Sie hier möglicherweise einige andere Befehle ausführen.
Aber inzwischen sollten Sie ziemlich vertraut sein, dass Sie eine Datei erstellen können, wenn Sie möchten.
Jetzt kann ich dies manuell oder in meinem Terminal tun.
kann ich tatsächlich.
Wenn Sie einen Mac verwenden, können Sie einfach berühren und dann sage ich Testpunkttext.
Wenn ich das hier anders mache, sehen Sie, dass ich eine Testtextdatei und ein Skript zuvor habe.
Und noch einmal, nur um zu überprüfen, ob ich zu meinem Desktop gehe.
Ja, ich habe diese beiden hier, perfekt jetzt hier drin, können wir einfach in unserer Skriptdatei sagen.
Offen.
Und der Name der Datei ist in unserem Fall test heartstring test, Punkttext einfach so.
Jetzt kann ich dies einer Variablen zuweisen und sie meine Datei nennen.
Und jetzt haben wir, nun ja, das Dateiobjekt, also lassen Sie uns dies überprüfen, wenn ich es hier tue, drucken Sie meine Datei.
Mal sehen was passiert.
Ich werde meinen Code ausführen.
Sagen wir also Python drei und führen dann das Skript aus.
Gut.
Ich bekomme ein Objekt, eine Textilumhüllung, ich bekomme den Namen, das sind Texte, die ich gemäht werde, von denen ich noch nicht sicher
bin, was es ist, wir lernen und dann Kodierungen, so ist diese Datei kodiert, das ist UTF acht.
Die meisten Dateien sind normalerweise in UTF 8 kodiert.
Alles klar, wie kann ich diese Datei eigentlich lesen?
Alles, was wir tun müssen, ist, dass meine Datei einen Punkt hat.
Lesen Sie die Methode darauf, wenn ich dies jetzt ausführe.
Nun, ich bekomme ein leeres Stück Platz, weil in diesem Testtext nichts steht, also lass uns etwas schreiben.
Ich öffne diese Datei und den erhabenen Text und schreibe einfach: Hallo, mein Name ist Andre Agassi.
Ich wurde wirklich sehr kreativ mit diesem.
Gut gemacht.
In Ordnung, gehen wir zurück.
Also wenn ich jetzt diese Datei lese.
Sieh dir das an, ich kann hallo lesen, mein Name ist Andre, und los gehts.
Ich habe meine Datei gelesen.
Schön und einfach.
Wenn ich das jetzt noch einmal durchführe, lassen Sie uns einfach.
Lesen Sie dies mehrmals.
Wenn ich klicke, laufe.
Ich kann das erste Mal lesen, aber diese beiden Male lese ich nichts.
Warum ist das so?
Nun, diese offene Funktion hat diese Idee eines Cursors.
Das heißt, Sie können die Datei nur einmal lesen.
Und sobald Sie es öffnen, gibt es ein Dateiobjekt zurück.
Und der Inhalt der Datei, den Sie lesen können, und der Inhalt der Datei werden mit einem
Cursor wie hier nacheinander gelesen und auf den Bildschirm gedruckt.
Aber am Ende dieses ersten Lesens befindet sich der Cursor am Ende der Datei.
Wenn es jetzt versucht zu lesen, ist es das Ende der Datei und nichts bleibt dort zurück.
Die Art und Weise, wie wir dies umgehen, besteht darin, so etwas zu tun.
Wir sagen einfach my file dot seke, was unseren Cursor auf den gewünschten Index in unserem Fall bewegt, suche null.
Also, wenn ich das jetzt starte, dann geht es los.
Und wenn ich den Cursor zurückbewege.
Und ich speichere und führe das aus.
Alles klar, das ist jetzt viel besser.
Und dies soll nur demonstrieren, dass Python diese Idee eines Cursors verwendet, um eine Datei zu lesen.
Nun, eine andere einzigartige Sache, die ich tun kann, ist das Lesen von Zeilen.
Also, wenn ich das starte.
Es liest die Zeile, aber sagen wir, unsere Textdatei hat verschiedene Zeilen, also wie geht es Ihnen?
Sagen wir hier drinnen ein Smiley, wenn ich jetzt die Zeile lese.
Hallo, mein Name ist Andre, wenn ich die Zeile noch einmal lese, hallo, mein Name ist Andre, weil ich jede Zeile bekomme.
Ich bekomme nur die erste Zeile, wenn ich diese mehrmals ausdrucke.
Und ich betreibe das.
In Ordnung, das ist besser, ich verstehe.
Hallo, mein Name ist Andre Smiley Face.
Wie geht es Ihnen?
Auch hier bewegt sich der Cursor weiter, richtig, sodass ich die Zeilen einfach weiterlesen kann.
Eine andere Sache, die ich tun kann, ist, einfach Zeilen lesen zu sagen, wenn ich dies ausführe.
Ich bekomme eine Liste, die die gesamte Datei enthält, alle Zeilen liest, und Sie sehen hier, dass ich Hallo habe, mein
Name ist Andre Nagui.
Ich habe hier eine neue Linie, ein Smiley, eine neue Linie.
Denken Sie daran, dies ist Escape-Sequenzierung.
Und wie geht es dir dann?
Und keine neue Leitung hier, weil es keine neue Leitung gibt.
Es ist das Ende der Datei.
Diese sind also äußerst nützlich. Vielleicht können wir reguläre Ausdrücke verwenden, um in einer Datei nach einem Textstück zu suchen, das
ziemlich nützlich ist, oder?
Nun, das Allerletzte, was wir tun müssen, und das ist ein wenig ärgerlich, also zeige ich Ihnen, wie wir es in
Zukunft nicht tun müssen.
Aber Sie müssen die Datei tatsächlich manuell schließen, nachdem Sie sie mit open geöffnet haben.
Sie können es also woanders verwenden und das Programm ist nur ein guter Standard. Sie müssen also sagen,
dass mein Dateipunkt geschlossen wird, nachdem Sie damit fertig sind.
Sagen Sie es Ihrem Computer, hey.
Du musst aufhören, was immer du tust, der Herbst interessiert mich nicht mehr, wir sind damit fertig.
Sie können es woanders verwenden.
Normalerweise machen wir so etwas und wir sind alle fertig.
Machen wir eine Pause und erfahren Sie mehr im nächsten Video.