Maison >développement back-end >Tutoriel Python >Comment puis-je capturer la sortie os.system dans une variable Python sans l'afficher à l'écran ?
En Python, la fonction os.system exécute des commandes système, renvoyant un code de sortie. Cependant, l’impression du résultat à l’écran peut s’avérer indésirable. Cet article explore des solutions pour capturer la sortie dans une variable tout en supprimant l'affichage à l'écran.
Selon une enquête précédente, os.popen offre une option viable :
os.popen('cat /etc/services').read()
Comme spécifié dans la documentation Python 3.6, os.popen utilise subprocess.Popen, offrant des fonctionnalités plus robustes pour gérer et communiquer avec sous-processus.
Pour une utilisation directe du sous-processus, le code suivant illustre la technique de sortie de capture :
import subprocess proc = subprocess.Popen(["cat", "/etc/services"], stdout=subprocess.PIPE, shell=True) (out, err) = proc.communicate() print("program output:", out)
En définissant stdout=subprocess .PIPE, la sortie est capturée, qui peut ensuite être consultée et imprimée comme vous le souhaitez.
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!