Heim > Artikel > Backend-Entwicklung > Was bedeutet fd in Python?
Dateideskriptor (fd) ist die Identifikationsnummer, die im System zur eindeutigen Aufzeichnung der aktuell geöffneten Datei verwendet wird. fd ist eine Ganzzahl.
Zusätzlich zum Dateiobjekt bietet Python auch Operationen auf fd. Die Operationen auf fd sind unterschiedliche Konzepte. Wie bei der Einführung des Dateiobjekts erwähnt, kann durch Aufrufen von f.fileno() der fd eines Dateiobjekts abgerufen werden, oder Sie können ein Dateiobjekt in einem vorhandenen fd kapseln: f = os.fdopen(fd).
Einige fds werden im Voraus zugewiesen, wenn ein Prozess erstellt wird:
0 - Standardeinstellung des Prozesses
1——Stdout des Prozesses
2——Stderr des Prozesses
Das OS-Modul in Python stellt die folgende Methode für fd bereit:
1. fd schließen
os.close(fd)
2. fd kopieren
os.dup(fd)
Ein neues fd1 zurückgeben, dieses fd1 wird kopiert Parameter fd.
3. Kopieren Sie fd
os.dup2(fd, fd2)
Kopieren Sie fd nach fd2. Wenn fd2 bereits geöffnet ist, schließen Sie es zuerst.
4. Von fd zu Dateiobjekt
os.fdopen(fd, mode='r', bufsize=-1)
Gibt ein Python-Dateiobjekt zurück, das fd kapselt. Die Parameter mode und bufsize entsprechen der integrierten open()-Funktion Parameter haben die gleiche Bedeutung.
5. Verschiedene Attribute der Datei von fd abrufen
os.fstat(fd)
Eine Instanz x vom Typ stat_result und os.stat(path) zurückgeben Der zurückgegebene Typ ist derselbe, außer dass die relevanten Attribute der entsprechenden Datei über einen fd abgerufen werden.
6. Ändern Sie die aktuelle Position der Datei entsprechend fd
os.lseek(fd, pos, how)
Der Effekt ist der gleiche wie bei f.seek(pos, how), der Parameter how gibt an Als Referenzpunkt gibt es insgesamt drei Typen: os.SEEK_SET == 0 (Anfang der Datei), os.SEEK_CUR == 1 (aktuelle Position) und os.SEEK_END == 2 (Ende der Datei). 🎜>
Es gibt kein ähnliches f.tell(). Diese Art von Funktion kann fd direkt verwenden, um die aktuelle Position der Datei zu ermitteln. Tatsächlich können Sie eine selbst mit os.lseek() implementierenos.lseek(fd, 0, os.SEEK_CUR)
kann die Position der Datei zurückgeben, die dem aktuellen FD entspricht, ohne dass die Originaldateien davon betroffen sind.
7. Öffnen Sie die Datei und rufen Sie fdos.open(file, flags, mode=0777
auf
Das obige ist der detaillierte Inhalt vonWas bedeutet fd in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!