Aus Dateien lesen Show
Eine Datei ist ein Bytestrom (also eine Folge von einzelnen Bytes wie Perlen auf einer Kette). Er ist mit einem Namen verknüpft und wird vom Betriebssystem im Dateibaum aufgehoben. Programme können beim Betriebssystem Zugriff darauf verlangen, um den Bytestrom zu lesen oder zu verändern. Solche Programme sind z.B. Editoren oder auch der Python-Interpreter, wenn er unsere Scripts liest, um sie abzuarbeiten.
Hinein ins Praktische. Am besten öffnet man zuerst einmal eine Datei zum Lesen. Am Besten eine, die es schon gibt, z.B. diese. diese = open("dateien1.py", "r") Das öffnet die Datei "dateien1.py" zum Lesen ("r"ead). Über das Dateiobjekt "diese" kommen wir nun an alles ran. Nun Lesen. Zuerst zeichenweise: while 1: Aus der Datei ein Byte lesen und in "zeichen" ablegen. Das klappt nur, wenn noch ein Zeichen da war, die Datei also nicht am Ende. Ansonsten hat "zeichen" den Wert "" und der steht für "falsch". Darauf basiert die Abfrage: if not zeichen: andernfalls ausgeben (ohne Zeilenwechsel, deswegen das Komma). print zeichen, Am Schluss noch die Datei schließen. diese.close() In Dateien schreiben diese = open("dateien1.py", "r") Wir öffnen eine zweite Datei mit dem Namen "dateien1.kopie" zum Schreiben ("w"rite). Wenn sie noch nicht existiert, wird sie neu angelegt. Ansonsten wird eine bestehende Datei überschrieben. Nun die gleiche Schleife wie vorher, nur dass nicht auf den Bildschirm (mit print) geschrieben wird, sondern in die neue Datei. while 1: Einige Bemerkungen:
Tags:Misc ExampleRelatedIch will gerne ein Spiel programmieren, also zumindest will ich es versuchen und dafür fange ich mit PyGame an. Jetzt habe ich aber schon mein erstes Problem: Und zwar schreibe ich Python-Code, aber der wird ja nicht ausgeführt, weil die Bibliothek PyGame nicht installiert ist. Ich habe zwar diese whl-Datei, weiß aber nicht, was ich damit anfangen soll. Kann mir da eventuell jemand helfen? Ich habe auch schon YouTube-Videos geschaut, aber irgendwie funktioniert es nicht wirklich. Ich würde mich über eine Antwort freuen! Danke.
Ähnliche Themen
|