Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Menangkap dan Menyimpan Output subproses.Panggilan Popen sebagai Rentetan dalam Python?

Bagaimanakah Saya Boleh Menangkap dan Menyimpan Output subproses.Panggilan Popen sebagai Rentetan dalam Python?

Patricia Arquette
Patricia Arquetteasal
2024-12-04 19:07:14335semak imbas

How Can I Capture and Store the Output of a subprocess.Popen Call as a String in Python?

Menyimpan Output subproses.Panggilan Popen dalam Rentetan

Dalam pengaturcaraan Python, menggunakan modul subproses membolehkan anda melaksanakan panggilan sistem dan menangkap keluaran mereka. Artikel ini menyediakan penyelesaian untuk menyimpan output subproses.Panggilan Popen dalam pembolehubah rentetan.

Penyelesaian untuk Python 2.7 atau Python 3

Python menyediakan subprocess.check_output () fungsi, direka khusus untuk menangkap output perintah ke dalam rentetan. Hanya gunakannya seperti berikut:

from subprocess import check_output
out = check_output(["ntpq", "-p"])

Penyelesaian untuk Python 2.4-2.6

Untuk Python versi 2.4 hingga 2.6, anda boleh menggunakan kaedah komunikasi Popen:

import subprocess
p = subprocess.Popen(["ntpq", "-p"], stdout=subprocess.PIPE)
out, err = p.communicate()

Pembolehubah keluar dalam kod di atas mengandungi yang diingini output.

Nota Berkenaan Input Perintah

Apabila menggunakan Popen, adalah penting untuk menghantar arahan sebagai senarai rentetan, seperti yang ditunjukkan dalam contoh yang disediakan. Ini kerana Popen tidak menggunakan shell.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menangkap dan Menyimpan Output subproses.Panggilan Popen sebagai Rentetan dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn