Systeme::py
Aller à la navigation
Aller à la recherche
| Fiche express | |
|---|---|
| Domaine | Interaction avec le système |
| Modules | sys, os, signal, getopt
|
| Voir aussi | Reseau::py · Time::py |
Systeme::py rassemble les briques d'interaction avec le système d'exploitation : flux standard (sys.stdin/stdout/stderr), gestion des signaux, arguments de ligne de commande et exécution de commandes externes.
Flux standard
import sys
sys.stdin
sys.stdout
sys.stderr
sys.stdout.write("un test\n")
Rediriger la sortie standard vers un fichier :
fichier = open('sortie.txt', 'w')
sys.stdout = fichier
print("quelque chose")
Signaux
import signal
import sys
def fermer_programme(signal, frame):
print("c'est l'heure de la fermeture")
sys.exit(0)
signal.signal(signal.SIGINT, fermer_programme)
print("Le programme va boucler...")
while True:
continue
Arguments de ligne de commande
import sys
if len(sys.argv) < 2:
print("précisez un paramètre en entrée")
sys.exit(1)
action = sys.argv[1]
if action == "start":
print("On démarre l'opération")
elif action == "stop":
print("On stoppe l'opération")
elif action == "restart":
print("On redémarre l'opération")
elif action == "status":
print("On affiche l'état de l'opération")
else:
print("Je ne connais pas l'opération")
Pour une gestion avancée des options (courtes/longues, ordre) :
import getopt
Exécution de commandes
import os
os.getcwd()
os.system("ls")
os.system("dir")
cmd = os.popen("ls")
cmd
Voir aussi
- Reseau::py — programmation réseau
- Time::py — dates, heures et temporisation