Programmation Systeme
1. Programmation Systeme
Écrivez et testez le programme suivant permettant de naviguez par un programme python comme
dans un invité de commande :
1 import os # bibliotheque system
2
3 print "Chemin actuel =",[Link]() # [Link]() equivalante a PWD dans linux
4 while True:
5 try:
6 commande=raw_input() # transferme la chaine de caracteres en minuscule
7 if [Link]().startswith("cd "): # si la commande = CD
8 [Link](commande[3:].strip()) # change working dirrectory
9 print "Chemin actuel =",[Link]()
10 elif [Link]().startswith("dir"): # si la commande = DIR
11 print "\n".join([Link]([Link]())) # liste les fichiers
situ& dans le repertoir actuel
12 elif [Link]().startswith("execute "): # commande d'execution
de fichier
13 [Link](commande[8:])
14 elif [Link]().startswith("exit"): # sortir is la commande ==
exit
15 break
16 except:
17 print "Commande non reconnue"
18
19
Optionnel :
Le programme suivant permet de lancer des commandes cmd en parallèles :
1 import subprocess
2 import time
3
4 # active l'option pour ne pas afficher la fenetre du cmd lors de l'execution
d'un subprocess
5 startupinfo = [Link]()
6 [Link] |= subprocess.STARTF_USESHOWWINDOW
7 [Link] = subprocess.SW_HIDE
8 ######################################################
9
10 # execute la commande "javac [Link]"
11 [Link](["javac","[Link]"],startupinfo = startupinfo) # l'objet
startupinfo contient les options du subprocess
12 [Link](2) # equivalent de [Link] dans java
13 # les deux processus se lance en parallel donc c'est necessaire d'attendre que
la compilation se termine avant d'execute le programme
14
15 # execute la commande "java Program"
16 [Link](["java","Program"],startupinfo = startupinfo)
17
4
Lecture de fichiers
2. Lecture de fichiers
Écrivez et testez le programme suivant permettant la lecture d'un fichier texte à partir d'un chemin
donné :
1 # overture du fichier en mode lecture ("r")
2 # mettez le chemin du fichier que vous souhitez lire
3 # a la place "CHEMIN DE VOTRE FICHIER TXT"
4 fichier=open("CHEMIN DE VOTRE FICHIER TXT","r")
5 # pour chque ligne dans le fichier,
6 for ligne in fichier:
7 print ligne # imprime la ligne lu du fichier
8 [Link]() # ferme le fichier
Testez le programme suivant :
1 print "\n".join([l for l in open("CHEMIN DE VOTRE FICHIER TXT")])
3. Copier un fichier binaire
Écrivez et testez le programme suivant permettant de copier un fichier d'un chemin à un autre :
1 fichierOreginal=open("CHEMIN DE VOTRE FICHIER","rb")
2 fichierCopie=open("CHEMIN FICHIER COPIE","wb")
3 for sequenceOctets in fichierOreginal:
4 [Link](sequenceOctets)
5 [Link]()
6 [Link]()
4. DiffListe
Question
Écrivez un programme qui lit deux tableaux de chiffres entiers et imprime la liste des chiffres
communs entre les deux (l'ordre et la fréquence des éléments ne sont pas importants).
Exemple :
Input :
1 8 7 6 4 5
1 5 8 0 1 7 0 9
Résultat :
1 5 8 7