Partage
  • Partager sur Facebook
  • Partager sur Twitter

Fonction Rechercher

    25 mars 2011 à 11:33:24

    Bonjour,
    j'essai de coder en python la fonction rechercher (rechercher un mot (donc chaîne de caractères)) dans tous les fichiers .txt qui existe dans un répertoire.
    Je n'arrive à le faire que pour un seul fichier, si quelqu'un pouvait m'aider svp ...
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      25 mars 2011 à 12:08:12

      Montre voir ton code, ça se trouve avec une simple boucle for ton problème serait réglé
      • Partager sur Facebook
      • Partager sur Twitter
        26 mars 2011 à 0:22:04

        Hum, pourquoi pas :
        import os
        for n in filter(lambda x: x[-4:] == ".txt", os.listdir(".")):
           #ton code pour un fichier
        

        enfin comme l'a dit fred1599, on pourra mieux t'aider si on a ton code.
        • Partager sur Facebook
        • Partager sur Twitter
          26 mars 2011 à 1:26:37

          import os
          import os.path
          
          def find_in_dir(text, dossier):
              for name in filter(lambda x: x.endswith('.txt'), os.listdir(dossier)):
                  with open(os.path.join(dossier, name)) as fichier:
                      for nb, line in enumerate(fichier):
                          if text in line:
                              yield name, nb+1, line.strip()
          
          for elt in find_in_dir('lol', '/home/arnaud'):
              print "{0} (l.{1}): {2}".format(*elt)
          


          Avec le fichier suivant (test.txt) dans le bon dossier :
          youpilol
          ceci est un test
          lol


          Ça me donne :

          test.txt (l.1): youpilol
          test.txt (l.3): lol


          Ce n'est peut-être pas "exactement" la fonctionnalité que tu veux, mais dans ce cas, tu n'as plus qu'à comprendre et adapter le code.
          • Partager sur Facebook
          • Partager sur Twitter
          Zeste de Savoir, le site qui en a dans le citron !

          Fonction Rechercher

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown