Beschreibung des Standardfehlerausgabestreams in Python-Code
from sys import stderr
stderr
Und wie man schreibt
import sys
sys.stderr
Es gibt zwei Möglichkeiten zu schreiben. Nicht nur stderr, sondern alle Importe. Nun, wie man sie richtig benutzt. Abgesehen von der Tatsache, dass Ersteres bei Verwendung in einer Schleife eine etwas bessere Leistung aufweist, gibt es einen semantischen Unterschied.
Wenn ich versuche, das Ausgabeziel mit contextlib.redirect_stderr
für Unit-Tests zu ersetzen, wird im ersteren Fall, wenn das Modul bereits geladen ist, der Verweis auf stderr bestätigt ** Funktioniert nicht **. Im letzteren Fall wird der stderr zum ersten Mal von sys erfasst, wenn der Prozess ausgeführt wird, sodass ** das Ersetzen wirksam ist **.
Da die Funktion zum einfachen Drucken mit "contextlib.redirect_stdout" aktiviert werden kann, kann gesagt werden, dass es sich um die Operation handelt, bei der jedes Mal stdout von sys vor Ort abgerufen wird. Wenn Sie also das Verhalten darauf abstimmen möchten, beschreiben Sie bitte letzteres. Es wird gut sein.