Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menangkap Output Perintah daripada `os.system` dalam Python Tanpa Memaparkannya pada Skrin?

Bagaimana untuk Menangkap Output Perintah daripada `os.system` dalam Python Tanpa Memaparkannya pada Skrin?

Linda Hamilton
Linda Hamiltonasal
2024-11-29 17:21:10267semak imbas

How to Capture Command Output from `os.system` in Python Without Displaying it on the Screen?

Cara Menangkap Output Perintah daripada os.system Tanpa Paparan Skrin

Apabila menggunakan os.system untuk melaksanakan arahan, output biasanya dipaparkan pada skrin. Walau bagaimanapun, anda mungkin ingin menangkap output arahan dan menyimpannya dalam pembolehubah untuk pemprosesan selanjutnya.

Untuk mengatasinya, anda boleh menggunakan os.popen sebaliknya:

output = os.popen('cat /etc/services').read()

Seperti yang dinyatakan dalam dokumentasi Python 3.6:

"Ini dilaksanakan menggunakan subproses.Popen; lihat dokumentasi kelas itu untuk cara yang lebih berkuasa untuk mengurus dan berkomunikasi dengan subproses."

Untuk lebih kawalan ke atas subproses, pertimbangkan untuk menggunakan subproses secara langsung:

import subprocess

proc = subprocess.Popen(["cat", "/etc/services"], stdout=subprocess.PIPE, shell=True)
(out, err) = proc.communicate()
print("program output:", out)

Atas ialah kandungan terperinci Bagaimana untuk Menangkap Output Perintah daripada `os.system` dalam Python Tanpa Memaparkannya pada Skrin?. 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