Avez-vous une question? (216) 97 656 803 hajjriadh@gmail.com
Python

Correction exercices les fichiers en Python

Un cours complet pour maîtriser Correction exercices les fichiers en Python.

0 chapitres 0 QCM Accès gratuit
  1. Objectifs

  2. Exercice 01

    1. Énoncé
    2. Solution
        OpérationsOrdre
        if os.path.isfile(filename) :2
        return file.readline()3
        with open(filename, ‘r’)as file :1
        return None5
        else :4
  3. Exercice 02

    1. Énoncé
    2. Solution
      • La bonne réponse est C
      inventory = open("inventory.txt", 'r')
      eof = False
      while eof == False:
          line = inventory.readline()
          if line != '' :
              if line != '\n' :
                  print(line)
          else:
              print("End of file")
              eof = True
              inventory.close()
      
  4. Exercice 03

    1. Énoncé
    2. Solution
      • La bonne réponse est C
      • Explication:
      • Les modes "r+", "w+" et "a+" ouvrent le fichier pour la mise à jour (lecture et écriture). Le mode "w+" truncate le fichier.
  5. Exercice 04

    1. Énoncé
    2. Solution
      • Bonne réponse: CE
  6. Exercice 05

    1. Énoncé
    2. Solution
      • Bonne réponse: FGH
  7. Exercice 06

    1. Énoncé
    2. Solution
      • Bonne réponse: A
  8. Exercice 07

    1. Énoncé
    2. Solution
      • Nous utilisons pour cela la méthode open () python pour ouvrir les fichier en mode lecture et ensuite la méthode read () python pour récupérer le contenu des fichiers. Et puis on applique la méthode split () pour convertir le contenu récupéré en une liste python. Finalement on parcourt les deux listes avec la boucle for pour déterminer la liste des mots communs aux deux fichiers.
      f1 = open('C:/Users/bigtec/Desktop/fichier1.txt', "r")
      f2 = open('C:/Users/bigtec/Desktop/fichier2.txt', "r")
      contenu1 = f1.read()
      contenu2 = f2.read()
      liste1 = contenu1.split()
      liste2 = contenu2.split()
      f1.close()
      f2.close()
      listMotsCommuns = []
      for mot in liste1:
          if mot in liste2 and mot not in listMotsCommuns:
              listMotsCommuns.append(mot)
      print(listMotsCommuns)
  9. Exercice 08

    1. Énoncé
    2. Solution
      def saisir():
          nouveau = "o"  # O -> oui ; N -> non
          fichier = open("C:/Users/bigtec/Desktop/concours.txt", "a")
          decision = {"a": "admis(e)", "r": "refuse(e)", "aj": "ajourne(e)"}
          groupe = {"1": "TMMSI01", "2": "TMMSI02", "3": "TMMSI03", "4": "TMMSI04"
                    , "5": "TMMSI05", "6": "TMMSI06"}
      
          while nouveau == "o":
              cin = input("Saisir le Numero CIN : ")
              nom = input("Saisir le Nom : ")
              prenom = input("Saisir le prenom : ")
              grp = input("saisir la groupe 1(TMMSI01)2(TMMSI02)... 6(TMMSI06): ")
              age = input("saisir l age ")
              dec = input("saisir la decision a(admis(e))r(refuse(e)) aj(ajourne(e)): ")
              ligne = cin+";"+nom+";"+prenom+";"+groupe[grp]+";"+age+";"+decision[dec]+"\n"
              fichier.write(ligne)
              nouveau = input("Saisir un nouveau candidat, (o / n) ?")
          fichier.close()
       
       
      def admis():
          fichier = open("C:/Users/bigtec/Desktop/concours.txt")
          dest = open("admis.txt", "a")
          for ligne in fichier:
              L = ligne.split(";")
              if L[4].strip() == "admis(e)":
                  dest.write(ligne)
          fichier.close()
          dest.close()
       
       
      def attente():
          fichier = open("C:/Users/bigtec/Desktop/admis.txt")
          dest = open("attente.txt", "a")
          for ligne in fichier:
              L = ligne.split(";")
              if int(L[3]) >= 30:
                  enreg = L[0]+";"+L[1]+";"+L[2]+"\n"
                  dest.write(enreg)
          fichier.close()
          dest.close()
       
       
      def statistiques(dec):
          fichier = open("C:/Users/bigtec/Desktop/concours.txt")
          L = fichier.readlines()
          fichier.close()
          L1 = []  # candidats admis
          L2 = []  # candidats refuses
          L3 = []  # candidats ajournes
          for ligne in L:
              L = ligne.split(";")
              if L[4].strip() == "admis(e)":
                  L1.append(ligne)
              elif L[4].strip() == "refuse(e)":
                  L2.append(ligne)
              else:
                  L3.append(ligne)
          if dec == "admis":
              return (len(L1)/len(L))*100
          elif dec == "refuse":
              return (len(L2)/len(L))*100
          else:
              return (len(L3)/len(L))*100
       
       
      def supprimer():
          fichier = open("C:/Users/bigtec/Desktop/admis.txt")
          candidat = []  # contient les candidats restants
          for ligne in fichier:
              L = ligne.split(";")
              if int(L[3]) < 30:
                  candidat.append(ligne)
          fichier.close()
          # reecrire la nouvelle liste
          fichier = open("admis.txt", "w")
          fichier.writelines(candidat)
          fichier.close()
      saisir()