Maison > développement back-end > Tutoriel Python > Comment capturer et attribuer la sortie d'une commande système à une variable en Python sans affichage à l'écran ?

Comment capturer et attribuer la sortie d'une commande système à une variable en Python sans affichage à l'écran ?

Linda Hamilton
Libérer: 2024-12-17 18:49:20
original
368 Les gens l'ont consulté

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

Attribuer la sortie de os.system à une variable tout en supprimant l'affichage à l'écran

En Python, os.system est utilisé pour exécuter une commande système et renvoie une valeur indiquant l'état de sortie de la commande. Cependant, le résultat de la commande est généralement affiché à l'écran. Cela peut ne pas être souhaitable dans certaines situations.

Pour attribuer la sortie de la commande à une variable et empêcher son affichage à l'écran, vous pouvez utiliser la fonction os.popen() au lieu de os.system. os.popen() renvoie un objet tube que vous pouvez utiliser pour lire le résultat de la commande.

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)
Copier après la connexion

Vous pouvez également utiliser la classe subprocess.Popen plus puissante pour gérer et communiquer avec les sous-processus. Voici comment vous obtiendriez le même résultat en utilisant subprocess.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)
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal