Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Python

Python - Datei-I/O

Vorherige SeiteNächste Seite

Dieses Kapitel behandelt alle grundlegenden E/A-Funktionen, die in Python verfügbar sind. Weitere Funktionen finden Sie in der Standard-Python-Dokumentation.

Auf dem Bildschirm drucken

Die einfachste Art, eine Ausgabe zu erzeugen, ist die Verwendung von print -Anweisung, in der Sie null oder mehr durch Kommas getrennte Ausdrücke übergeben können. Diese Funktion wandelt die übergebenen Ausdrücke in einen String um und schreibt das Ergebnis wie folgt auf die Standardausgabe −

Live-Demo
#!/usr/bin/python

print "Python is really a great language,", "isn't it?"

Dies führt auf Ihrem Standardbildschirm zu folgendem Ergebnis −

Python is really a great language, isn't it?

Tastatureingabe lesen

Python bietet zwei eingebaute Funktionen, um eine Textzeile von der Standardeingabe zu lesen, die standardmäßig von der Tastatur kommt. Diese Funktionen sind −

Die raw_input Funktion

Die raw_input([Eingabeaufforderung]) Die Funktion liest eine Zeile von der Standardeingabe und gibt sie als Zeichenfolge zurück (wobei der abschließende Zeilenumbruch entfernt wird).

#!/usr/bin/python

str = raw_input("Enter your input: ")
print "Received input is : ", str

Dies fordert Sie auf, eine beliebige Zeichenfolge einzugeben, und es würde dieselbe Zeichenfolge auf dem Bildschirm anzeigen. Als ich „Hello Python!“ eingetippt habe, sieht die Ausgabe so aus −

Enter your input: Hello Python
Received input is :  Hello Python

Die Eingabe Funktion

Die Eingabe([Eingabeaufforderung]) Die Funktion ist äquivalent zu raw_input, außer dass sie davon ausgeht, dass die Eingabe ein gültiger Python-Ausdruck ist, und das ausgewertete Ergebnis an Sie zurückgibt.

#!/usr/bin/python

str = input("Enter your input: ")
print "Received input is : ", str

Dies würde das folgende Ergebnis für die eingegebene Eingabe erzeugen −

Enter your input: [x*5 for x in range(2,10,2)]
Recieved input is :  [10, 20, 30, 40]

Öffnen und Schließen von Dateien

Bisher haben Sie auf der Standardein- und -ausgabe gelesen und geschrieben. Jetzt werden wir sehen, wie man eigentliche Datendateien verwendet.

Python bietet standardmäßig grundlegende Funktionen und Methoden, die zum Bearbeiten von Dateien erforderlich sind. Sie können die meisten Dateibearbeitungen mit einer Datei durchführen Objekt.

Die Öffnung Funktion

Bevor Sie eine Datei lesen oder schreiben können, müssen Sie sie mit Pythons eingebautem open() öffnen Funktion. Diese Funktion erstellt eine Datei -Objekt, das verwendet werden würde, um andere damit verbundene Unterstützungsmethoden aufzurufen.

Syntax

file object = open(file_name [, access_mode][, buffering])

Hier sind Parameterdetails −

Hier ist eine Liste der verschiedenen Modi zum Öffnen einer Datei −

Sr.No. Modi &Beschreibung
1

r

Öffnet eine Datei nur zum Lesen. Der Dateizeiger wird an den Anfang der Datei gesetzt. Dies ist der Standardmodus.

2

rb

Öffnet eine Datei nur zum Lesen im Binärformat. Der Dateizeiger wird an den Anfang der Datei gesetzt. Dies ist der Standardmodus.

3

r+

Öffnet eine Datei zum Lesen und Schreiben. Der Dateizeiger, der am Anfang der Datei platziert wird.

4

rb+

Öffnet eine Datei zum Lesen und Schreiben im Binärformat. Der Dateizeiger, der am Anfang der Datei platziert wird.

5

w

Öffnet eine Datei nur zum Schreiben. Überschreibt die Datei, falls die Datei vorhanden ist. Wenn die Datei nicht existiert, erstellt eine neue Datei zum Schreiben.

6

wb

Öffnet eine Datei nur zum Schreiben im Binärformat. Überschreibt die Datei, falls die Datei vorhanden ist. Wenn die Datei nicht existiert, erstellt eine neue Datei zum Schreiben.

7

w+

Öffnet eine Datei zum Schreiben und Lesen. Überschreibt die vorhandene Datei, falls die Datei vorhanden ist. Wenn die Datei nicht existiert, erstellt eine neue Datei zum Lesen und Schreiben.

8

wb+

Öffnet eine Datei zum Schreiben und Lesen im Binärformat. Überschreibt die vorhandene Datei, falls die Datei vorhanden ist. Wenn die Datei nicht existiert, erstellt eine neue Datei zum Lesen und Schreiben.

9

ein

Öffnet eine Datei zum Anhängen. Der Dateizeiger befindet sich am Ende der Datei, wenn die Datei existiert. Das heißt, die Datei befindet sich im Anfügemodus. Wenn die Datei nicht existiert, wird eine neue Datei zum Schreiben erstellt.

10

ab

Öffnet eine Datei zum Anhängen im Binärformat. Der Dateizeiger befindet sich am Ende der Datei, wenn die Datei existiert. Das heißt, die Datei befindet sich im Anfügemodus. Wenn die Datei nicht existiert, wird eine neue Datei zum Schreiben erstellt.

11

a+

Öffnet eine Datei zum Anhängen und Lesen. Der Dateizeiger befindet sich am Ende der Datei, wenn die Datei existiert. Die Datei wird im Anfügemodus geöffnet. Wenn die Datei nicht existiert, wird eine neue Datei zum Lesen und Schreiben erstellt.

12

ab+

Öffnet eine Datei zum Anhängen und Lesen im Binärformat. Der Dateizeiger befindet sich am Ende der Datei, wenn die Datei existiert. Die Datei wird im Anfügemodus geöffnet. Wenn die Datei nicht existiert, wird eine neue Datei zum Lesen und Schreiben erstellt.

Die Datei Objektattribute

Sobald eine Datei geöffnet ist, haben Sie eine Datei Objekt erhalten Sie verschiedene Informationen zu dieser Datei.

Hier ist eine Liste aller Attribute, die sich auf das Dateiobjekt beziehen −

Sr.No. Attribut &Beschreibung
1

Datei.geschlossen

Gibt true zurück, wenn die Datei geschlossen ist, andernfalls false.

2

file.mode

Gibt den Zugriffsmodus zurück, mit dem die Datei geöffnet wurde.

3

Datei.Name

Gibt den Namen der Datei zurück.

4

file.softspace

Gibt „false“ zurück, wenn bei print explizit Leerzeichen erforderlich sind, andernfalls „true“.

Beispiel

Live-Demo
#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
print "Name of the file: ", fo.name
print "Closed or not : ", fo.closed
print "Opening mode : ", fo.mode
print "Softspace flag : ", fo.softspace

Dies erzeugt das folgende Ergebnis −

Name of the file:  foo.txt
Closed or not :  False
Opening mode :  wb
Softspace flag :  0

Das Schließen() Methode

Die Methode close() einer Datei Objekt löscht alle ungeschriebenen Informationen und schließt das Dateiobjekt, danach kann nicht mehr geschrieben werden.

Python schließt eine Datei automatisch, wenn das Referenzobjekt einer Datei einer anderen Datei neu zugewiesen wird. Es hat sich bewährt, die Methode close() zu verwenden, um eine Datei zu schließen.

Syntax

fileObject.close()

Beispiel

Live-Demo
#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
print "Name of the file: ", fo.name

# Close opend file
fo.close()

Dies erzeugt das folgende Ergebnis −

Name of the file:  foo.txt

Dateien lesen und schreiben

Die Datei Objekt bietet eine Reihe von Zugriffsmethoden, um unser Leben einfacher zu machen. Wir würden sehen, wie man read() verwendet und write() Methoden zum Lesen und Schreiben von Dateien.

Das write() Methode

Das write() -Methode schreibt eine beliebige Zeichenfolge in eine geöffnete Datei. Es ist wichtig zu beachten, dass Python-Strings Binärdaten und nicht nur Text enthalten können.

Die Methode write() fügt am Ende des Strings kein Zeilenumbruchzeichen ('\n') hinzu −

Syntax

fileObject.write(string)

Hier ist der übergebene Parameter der Inhalt, der in die geöffnete Datei geschrieben werden soll.

Beispiel

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
fo.write( "Python is a great language.\nYeah its great!!\n")

# Close opend file
fo.close()

Die obige Methode würde foo.txt erstellen Datei und würde gegebenen Inhalt in diese Datei schreiben und schließlich würde es diese Datei schließen. Wenn Sie diese Datei öffnen würden, hätte sie folgenden Inhalt.

Python is a great language.
Yeah its great!!

Das read() Methode

Das read() -Methode liest einen String aus einer geöffneten Datei. Es ist wichtig zu beachten, dass Python-Strings binäre Daten enthalten können. abgesehen von Textdaten.

Syntax

fileObject.read([count])

Übergebener Parameter ist hier die Anzahl der Bytes, die aus der geöffneten Datei gelesen werden sollen. Diese Methode beginnt mit dem Lesen am Anfang der Datei und wenn count fehlt, dann versucht es so viel wie möglich zu lesen, vielleicht bis zum Ende der Datei.

Beispiel

Nehmen wir eine Datei foo.txt , die wir oben erstellt haben.

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "r+")
str = fo.read(10);
print "Read String is : ", str
# Close opend file
fo.close()

Dies erzeugt das folgende Ergebnis −

Read String is :  Python is

Dateipositionen

Das erzählen() Methode teilt Ihnen die aktuelle Position innerhalb der Datei mit; Mit anderen Worten, der nächste Lese- oder Schreibvorgang findet bei so vielen Bytes vom Anfang der Datei statt.

Die seek(offset[, from]) -Methode ändert die aktuelle Dateiposition. Der Versatz Das Argument gibt die Anzahl der zu verschiebenden Bytes an. Die von Das Argument gibt die Referenzposition an, von der aus die Bytes verschoben werden sollen.

Wenn von auf 0 gesetzt bedeutet, den Anfang der Datei als Referenzposition verwenden und 1 bedeutet, die aktuelle Position als Referenzposition verwenden, und wenn es auf 2 gesetzt ist, wird das Ende der Datei als Referenzposition verwendet.

Beispiel

Nehmen wir eine Datei foo.txt , die wir oben erstellt haben.

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "r+")
str = fo.read(10)
print "Read String is : ", str

# Check current position
position = fo.tell()
print "Current file position : ", position

# Reposition pointer at the beginning once again
position = fo.seek(0, 0);
str = fo.read(10)
print "Again read String is : ", str
# Close opend file
fo.close()

Dies erzeugt das folgende Ergebnis −

Read String is :  Python is
Current file position :  10
Again read String is :  Python is

Umbenennen und Löschen von Dateien

Python os -Modul stellt Methoden bereit, die Ihnen bei der Durchführung von Dateiverarbeitungsvorgängen wie dem Umbenennen und Löschen von Dateien helfen.

Um dieses Modul zu verwenden, müssen Sie es zuerst importieren und können dann alle zugehörigen Funktionen aufrufen.

Die rename() Methode

Das umbenennen() Die Methode nimmt zwei Argumente entgegen, den aktuellen Dateinamen und den neuen Dateinamen.

Syntax

os.rename(current_file_name, new_file_name)

Beispiel

Es folgt das Beispiel zum Umbenennen einer bestehenden Datei test1.txt

#!/usr/bin/python
import os

# Rename a file from test1.txt to test2.txt
os.rename( "test1.txt", "test2.txt" )

Das remove() Methode

Sie können remove() verwenden Methode zum Löschen von Dateien durch Angabe des Namens der zu löschenden Datei als Argument.

Syntax

os.remove(file_name)

Beispiel

Im Folgenden sehen Sie ein Beispiel zum Löschen einer vorhandenen Datei test2.txt

#!/usr/bin/python
import os

# Delete file test2.txt
os.remove("text2.txt")

Verzeichnisse in Python

Alle Dateien befinden sich in verschiedenen Verzeichnissen, und Python kann auch damit problemlos umgehen. Das os -Modul verfügt über mehrere Methoden, mit denen Sie Verzeichnisse erstellen, entfernen und ändern können.

Das mkdir() Methode

Sie können das mkdir() verwenden Methode des os Modul zum Erstellen von Verzeichnissen im aktuellen Verzeichnis. Sie müssen dieser Methode ein Argument übergeben, das den Namen des zu erstellenden Verzeichnisses enthält.

Syntax

os.mkdir("newdir")

Beispiel

Es folgt das Beispiel zum Erstellen eines Verzeichnisses test im aktuellen Verzeichnis −

#!/usr/bin/python
import os

# Create a directory "test"
os.mkdir("test")

Das chdir() Methode

Sie können chdir() verwenden Methode zum Wechseln des aktuellen Verzeichnisses. Die Methode chdir() nimmt als Argument den Namen des Verzeichnisses, das Sie zum aktuellen Verzeichnis machen möchten.

Syntax

os.chdir("newdir")

Beispiel

Es folgt das Beispiel, um in das Verzeichnis "/home/newdir" zu gehen −

#!/usr/bin/python
import os

# Changing a directory to "/home/newdir"
os.chdir("/home/newdir")

Das getcwd() Methode

Das getcwd() Methode zeigt das aktuelle Arbeitsverzeichnis an.

Syntax

os.getcwd()

Beispiel

Das folgende Beispiel gibt das aktuelle Verzeichnis an −

#!/usr/bin/python
import os

# This would give location of the current directory
os.getcwd()

Der rmdir() Methode

Das rmdir() Methode löscht das Verzeichnis, das als Argument in der Methode übergeben wird.

Vor dem Entfernen eines Verzeichnisses sollten alle darin enthaltenen Inhalte entfernt werden.

Syntax

os.rmdir('dirname')

Beispiel

Im Folgenden sehen Sie ein Beispiel zum Entfernen des Verzeichnisses „/tmp/test“. Es ist erforderlich, den vollständig qualifizierten Namen des Verzeichnisses anzugeben, andernfalls würde es im aktuellen Verzeichnis nach diesem Verzeichnis suchen.

#!/usr/bin/python
import os

# This would  remove "/tmp/test"  directory.
os.rmdir( "/tmp/test"  )

Datei- und verzeichnisbezogene Methoden

Es gibt drei wichtige Quellen, die eine breite Palette von Dienstprogrammmethoden zum Handhaben und Manipulieren von Dateien und Verzeichnissen auf Windows- und Unix-Betriebssystemen bereitstellen. Sie lauten wie folgt −


Python

  1. C Eingang Ausgang (E/A)
  2. C Dateiverwaltung
  3. Python-Eingabe, -Ausgabe und -Import
  4. Python-Datei-I/O
  5. Python-Verzeichnis- und Dateiverwaltung
  6. Python-Prüfung, ob Datei vorhanden ist | So prüfen Sie, ob ein Verzeichnis in Python existiert
  7. C - Datei-E/A
  8. C - Header-Dateien
  9. C++-Dateien und -Streams
  10. C# - Datei-E/A