Bis zu diesem Punkt haben wir gelernt, wie man Dateien liest, aber wir hatten dieses nervige Ding mit dem Cursor
und mussten dann die Datei schließen.
Wie können wir das also beheben?
Nun, eine bessere Möglichkeit, so etwas tatsächlich zu tun und die Datei Eyo mit Python zu erstellen, ist
die eingebaute with-Anweisung.
Lassen Sie mich Ihnen zeigen, was wir anstelle von dem, was wir vorher hatten, sagen werden.
Mit öffnen Sie den Namen der Datei.
Und sagen Sie als was auch immer die Variable Sie wollen, also meine Datei.
Mit Open können Sie jetzt tatsächlich so etwas tun, müssen sich jedoch keine Gedanken über das Schließen machen,
daher möchten Sie die meiste Zeit die width-Anweisung verwenden.
Dies ist der richtige Weg, um mit Dateien in Python zu arbeiten.
Und wenn ich hier spare und laufe.
Mein Drehbuch.
Nun, ich bekomme eine Fehlermeldung, weil ich die Spalte hier vergessen habe, wenn ich erneut starte.
Da gehst du.
Ich bekomme meine Ausgabe und ich muss meine Datei nicht schließen.
Bei mir ist alles unten.
Dies ist also eine Standardmethode zum Lesen einer Datei.
Was wäre, wenn wir in eine Datei schreiben wollten?
Bisher haben wir nur gelesen und tatsächlich hat Hood Open einen Standardparameter namens MOAD.
Entspricht R, was für Read steht.
Sind wir mit Modus also in der Lage, Dateien zu lesen, wenn wir den Modus nicht angeben, wird automatisch davon ausgegangen, dass wir
lesen.
Aber wenn wir in eine Datei schreiben wollten, können wir einfach W for tun.
Rechts.
Also wenn ich das starte.
Sie sehen, dass ich jetzt einen Fehler bekomme, nicht unterstützter Vorgang, nicht lesbar, weil die Datei nur
Rinne sein kann.
Damit ich also lesen und schreiben kann, kann ich r w schreiben.
Rechts.
Okay, lass uns nachsehen.
Nein, so funktioniert es eigentlich nicht, man könnte meinen, es wäre RW, aber das ist ein kleiner Trick.
Um zu lesen und zu schreiben, lesen wir Plus.
Also, wenn ich das starte.
Gut.
Ich lese und schreibe und habe eine leere Liste, weil diese jetzt leer ist.
OK, also schreiben wir hier in eine Datei.
Lassen Sie uns dies etwas kleiner machen, damit wir sehen, dass es besser ist.
Nehmen wir an, in diesem Herbst möchte ich Text haben und in diesem Text werde ich meinen Dateipunkt sagen, richtig.
Und ich kann jeden Text schreiben, den ich will, also sagen wir, hey, das ist es.
Mir.
Also jetzt hier, wenn ich Text drucke.
Und ich betreibe das.
ich bekomme 11.
Hmm, was bedeutet diese 11?
Nun, das ist im Moment wirklich wichtig, worauf wir uns konzentrieren wollen, hey, ich bin es.
Ich habe in eine Datei geschrieben.
OK, sagen wir, ich wollte die Datei wieder öffnen und tatsächlich wieder schreiben.
Sagen wir, diesmal schreibe ich ein Smiley-Gesicht.
Wenn ich das laufe.
Und geh zurück.
Okay, es sieht so aus, als hätte ich in die Datei geschrieben, aber oh, wollten wir das?
Wenn wir etwas in eine Datei schreiben, wird der Cursor zurückgesetzt.
Denken Sie daran, wenn wir eine Datei öffnen, geht der Cursor auf Null.
Und wir schreiben in die Datei, und wenn dort schon etwas vorhanden ist, während wir es überschreiben, müssen
wir vorsichtig sein.
Und übrigens, diese Textdatei hat uns gerade mitgeteilt, dass wir zwei Charaktere geschrieben haben, The Smiley Face.
OK, also wie können wir das beheben, wie können wir sicherstellen, dass wir nicht kaputt machen, was wir vorher haben, das heißt,
hey, ich bin es und ich möchte am Ende nur ein Smiley-Gesicht hinzufügen?
Nun, wir können den Append-Modus verwenden.
Der Append-Modus ist a und dies a am Ende der Datei.
Wenn ich das so laufe, hey, ich bin es mit einem Smiley-Gesicht, es passiert bis zum Ende.
Das ist also der Append-Modus.
Auch hier können wir W zum Schreiben verwenden und wenn ich dies ausführe.
Es.
Fügt ein Smiley-Gesicht hinzu.
Nun, warum hat es nicht wie letztes Mal geklappt und das vorhandene Ding überschrieben?
Nun, es liegt an unserem Modus.
W. ermöglicht es uns, zuvor in eine Datei zu schreiben, als wir gelesen und geschrieben haben, was passiert ist, ist, dass wir die Datei gelesen
haben.
Lassen Sie uns das noch einmal ausführen.
Kommen wir zurück zu hey, ich bin es so, wie es war.
Und wenn ich das nochmal starte.
Denn wir haben gelesen und geschrieben.
Der Cursor wurde auf Null und darüber gesetzt, im Gegensatz, wenn wir nur das Richtige getan haben.
Es wird davon ausgegangen, dass dies eine neue Datei ist und wir nur das Smiley-Gesicht hinzufügen möchten.
Wenn ich hier auf Ausführen klicke, sehen Sie, dass es jetzt nur noch ein Smiley ist.
Sie sollten also vorsichtig sein, dass Sie den richtigen Modus verwenden, der auf Ihren Anforderungen basiert.
Nehmen wir an, wir wollten einen Vater erschaffen, der nicht existiert.
Lassen Sie uns eine Datei namens Happy Dot Taxed haben.
Oder eigentlich, nein, lass uns einstellen.
Und das schreibt ein trauriges Gesicht, aber denken Sie daran, wir haben das nicht auf unserem Desktop, wenn ich das
lösche und auf unseren Desktop schaue, haben wir keinen traurigen Text.
Wenn ich hier Plus lese.
Also lese und schreibe und ich führe das aus.
Ich erhalte eine Datei, die hier nicht gefunden wird.
Wenn ich hier ein Recht mache und das führe.
Alles klar, es sieht so aus, als ob es geklappt hat, wenn ich mir die Dateien ansehe, habe ich jetzt einen traurigen Text.
Also wenn ich es jetzt öffne.
Ich habe einen traurigen Gesichtstext.
So erstellt right auch eine neue Datei, falls diese noch nicht existiert oder überschreibt die vorhandene.
Sie möchten also noch einmal vorsichtig mit dem Modus sein, ob Sie anhängen möchten, ob Sie lesen
möchten, ob Sie lesen und schreiben möchten.
Aber die gängigsten sind meistens Lesen, Schreiben und Anhängen.
Im nächsten Video möchte ich nun über diese Idee einer Datei sprechen.
Ich habe vorerst Textdateien geschrieben, aber wir hätten alles schreiben können.
Wir hätten eine Datei erstellen können, wenn ich gewollt hätte.
Aber was ist mit dem Zugriff auf Dateien, die sich an verschiedenen Orten befinden, z. B. in Ordnern?
Wir werden dieses Thema im nächsten Video untersuchen.