Sys-Bibliothek in Python
Die Sys-Bibliothek von Python ist eine Python-Standardbibliothek, die Funktionen und Variablen für die Interaktion mit dem Python-Interpreter und seiner Umgebung bereitstellt. Es bietet auch einige nützliche Methoden zum Bearbeiten der Python-Laufzeitumgebung.
Die Hauptfunktionen der Sys-Bibliothek sind wie folgt:
1. Befehlszeilenparameter
Befehlszeilenargumente sind Argumente, die in der Befehlszeile an das Skript übergeben werden. Python-Skripte können über das sys-Modul auf diese Parameter zugreifen.
import sys
if len(sys.argv) > 1:
print("hello " + sys.argv[1])
Der obige Code kann einen Befehlszeilenparameter empfangen und ausdrucken, nachdem er mit der Zeichenfolge „hello“ verkettet wurde.
Verstehst du nicht?
Ein weiteres Beispiel:
Angenommen, wir führen den Befehl in der Befehlszeile aus , um das Python-Skript auszuführen. Wir müssen die Parameter in python test.py alice 18
der Befehlszeile des Skripts abrufen und sie dann ausdrucken.alice
18
Code wie folgt anzeigen:
import sys
if __name__ == '__main__':
if len(sys.argv) != 3:
print("Usage: python test.py <name> <age>")
sys.exit(1)
name = sys.argv[1]
age = sys.argv[2]
print("Hello, %s! You are %s years old." % (name, age))
Im obigen Beispiel beurteilen wir zunächst, ob die Anzahl der in der Befehlszeile übergebenen Parameter gleich 3 ist. Wenn nicht, geben wir eine Eingabeaufforderungsmeldung aus und beenden das Skript. Als nächstes verwenden wir, um sys.argv
die in der Befehlszeile übergebenen Parameter abzurufen. sys.argv
Dabei handelt es sich um eine Liste, in der das erste Element der Skriptname und die folgenden Elemente die in der Befehlszeile übergebenen Parameter sind. Wir speichern die erhaltenen Parameter in name
und age
-Variablen und verwenden dann den Platzhalter, um die Zeichenfolge beim Drucken der Ausgabe zu formatieren %s
, sodass die gedruckte Zeichenfolge die von der Befehlszeile übergebenen Parameter enthält.
Führen Sie das Skript aus. Die Ausgabe lautet wie folgt:
Hello, alice! You are 18 years old.
2. stdin、stdout与stderr
Die Sys-Bibliothek stellt außerdem drei Stream-Objekte bereit: stdin, stdout und stderr, die für Standardeingabe, Standardausgabe und Standardfehler nützlich sind. Der folgende Code zeigt, wie man sie verwendet:
import sys
sys.stdout.write("hello world\n") # 输出到标准输出流
sys.stderr.write("error occurred\n") # 输出到标准错误流
data = sys.stdin.readline() # 从标准输入流中读取一行数据
3. Ausnahmebehandlung
Der Umgang mit Ausnahmen ist ein wesentlicher Bestandteil der Programmierung. Das sys-Modul stellt die Funktion sys.exc_info() bereit, mit der Informationen über die aktuelle Ausnahme abgerufen werden können. So verwenden Sie die Funktion:
import sys
try:
x = 1 / 0
except:
type, value, traceback = sys.exc_info()
print("Error type: ", type)
print("Error message: ", value)
Ausgang:
Error type: <class 'ZeroDivisionError'>
Error message: division by zero
4. Versionsinformationen
Die Versionsvariable in der Sys-Bibliothek enthält Versionsinformationen für den aktuellen Python-Interpreter. Es enthält auch Zeichenfolgen zum Python-Interpreter, z. B. Veröffentlichungsdaten und Copyright-Informationen.
Der folgende Code zeigt, wie Sie Python-Versionsinformationen erhalten:
import sys
print("Python version")
print(sys.version)
print("Version info.")
print(sys.version_info)
Das Obige sind die Hauptfunktionen der Sys-Bibliothek!