Heim > Backend-Entwicklung > Python-Tutorial > Einführung in die Verwendung der Unterprozessbibliothek in Python

Einführung in die Verwendung der Unterprozessbibliothek in Python

不言
Freigeben: 2018-10-26 17:23:01
nach vorne
4154 Leute haben es durchsucht

Dieser Artikel bietet Ihnen eine Einführung in die Verwendung der Unterprozessbibliothek in Python. Ich hoffe, dass er für Freunde hilfreich ist.

Einführung

Der Zweck der Verwendung des Unterprozessmoduls besteht darin, einige alte Module und Methoden wie os.system zu ersetzen.

Modul importieren

>>> import subprocess
Nach dem Login kopieren

Befehlsausführung call()

Führen Sie den durch den Parameter bereitgestellten Befehl aus und führen Sie das Array aus als ein Parameter Order. Seine Funktion ähnelt os.system(cmd).

>>> subprocess.call(['ls','-l')
Nach dem Login kopieren

Der Shell-Parameter ist standardmäßig auf False eingestellt.
Wenn die Shell auf True gesetzt ist, können Sie die Zeichenfolge direkt übergeben:

>>> subprocess.call('ls -l',shell=True)
Nach dem Login kopieren

Erhalten Sie das Rückgabeergebnis check_output()

call() gibt nicht zurück das angezeigte Ergebnis Ja, Sie können check_ouput() verwenden, um das zurückgegebene Ergebnis zu erhalten:

>>> result = subprocess.check_output(['ls','-l'],shell=True)
>>> result.decode('utf-8')
Nach dem Login kopieren

Prozesserstellung und -verwaltung Popen-Klasse

subprocess.popen anstelle von os.popen . Eine Popen-Klasse kann erstellt werden, um Prozesse zu erstellen und komplexe Interaktionen durchzuführen.

Erstellen Sie einen untergeordneten Prozess, der nicht wartet

import subprocess
child = subprocess.Popen(['ping','-c','4','www.baidu.com'])
print('Finished')
Nach dem Login kopieren

Fügen Sie einen untergeordneten Prozess zum Warten hinzu

import subprocess
child = subprocess.Popen(['ping','-c','4','www.baidu.com'])
child.wait()  # 等待子进程结束
print('Finished')
Nach dem Login kopieren

Nach dem Hinzufügen von warten( ), der Hauptprozess wartet auf das Ende des untergeordneten Prozesses, bevor er die folgende Anweisung ausführt.

Unterprozess-Textflusssteuerung

Standardausgabeumleitung:

import subprocess
child = subprocess.Popen(['ls','-l'],stdout=subprocess.PIPE)    #将标准输出定向输出到subprocess.PIPE
print(child.stdout.read())
Nach dem Login kopieren

Verwenden Sie stdin damit:

import subprocess
child1 = subprocess.Popen(['cat','/etc/passwd'],stdout=subprocess.PIPE)
child2 = subprocess.Popen(['grep','root'],stdin=child1.stdout,stdout=subprocess.PIPE)
print child2.communicate()
Nach dem Login kopieren


Das obige ist der detaillierte Inhalt vonEinführung in die Verwendung der Unterprozessbibliothek in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage