Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menangkap dan Menetapkan Output Perintah Sistem kepada Pembolehubah dalam Python tanpa Paparan Skrin?

Bagaimana untuk Menangkap dan Menetapkan Output Perintah Sistem kepada Pembolehubah dalam Python tanpa Paparan Skrin?

Linda Hamilton
Linda Hamiltonasal
2024-12-17 18:49:20432semak imbas

How to Capture and Assign System Command Output to a Variable in Python without Screen Display?

Menetapkan Output os.system kepada Pembolehubah sambil Menekan Paparan Pada Skrin

Dalam Python, os.system digunakan untuk melaksanakan perintah sistem dan mengembalikan nilai menunjukkan status keluar arahan. Walau bagaimanapun, output arahan biasanya dipaparkan pada skrin. Ini mungkin tidak diingini dalam situasi tertentu.

Untuk menetapkan output arahan kepada pembolehubah dan menghalangnya daripada dipaparkan pada skrin, anda boleh menggunakan fungsi os.popen() dan bukannya os.system. os.popen() mengembalikan objek paip yang boleh anda gunakan untuk membaca output arahan.

import os

# Use os.popen to capture the output of the command
popen_object = os.popen('cat /etc/services')

# Read the output from the pipe object
output = popen_object.read()

# Print the output, which will not be displayed on the screen
print(output)

Sebagai alternatif, anda boleh menggunakan subproses yang lebih berkuasa.Popen kelas untuk mengurus dan berkomunikasi dengan subproses. Begini cara anda mencapai hasil yang sama menggunakan subproses.Popen:

import subprocess

# Create a subprocess object
proc = subprocess.Popen(['cat', '/etc/services'], stdout=subprocess.PIPE)

# Communicate with the subprocess and retrieve its output
output, _ = proc.communicate()

# Print the output, which will not be displayed on the screen
print(output)

Atas ialah kandungan terperinci Bagaimana untuk Menangkap dan Menetapkan Output Perintah Sistem kepada Pembolehubah dalam Python tanpa Paparan 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