SEARCH WORD

wkenw Messages postés 19 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 3 août 2009 - 12 oct. 2009 à 11:30
wkenw Messages postés 19 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 3 août 2009 - 12 oct. 2009 à 19:53
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/50657-search-word

wkenw Messages postés 19 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 3 août 2009
12 oct. 2009 à 19:53
un autre avantage du os.walk(), c'est que ce sera portable, même si l'adaptation à unix ne coûte pas bien chère ici.
ShellBash Messages postés 1 Date d'inscription mercredi 29 avril 2009 Statut Membre Dernière intervention 12 octobre 2009
12 oct. 2009 à 19:42
Bonjour,

Bien tout ça.
Une petite confusion dans un commentaire et un titre de fenêtre : la fonction parcourir() permet la sélection d'un dossier ! (ce n'est pas cohérent entre le nom du bouton, le commentaire, et le nom de la fenêtre de recherche)

Sinon, plutôt que d'utiliser la commande find, tu peux :
- voir du côté de os.walk() qui te parcours une arborescence
- stocker dans une liste des tuples (chemin fichier, nom fichier, ligne) les occurrences trouvées dans les fichiers parcouru

Points positifs :
- ça t'évite de balancer la réponse dans un fichier pour le lire juste derrière
- tu as la maîtrise sur les données que tu veux, tu peux proposer ensuite de sauvegarder le résultat dans un fichier
- plus qu'un bouton pour sélectionné un répertoire puis os.walk() parcours l'arborescence et youpla !
- ça fait que plus de python :)

Point négatif :
tu te tapes l'ouverture d'un fichier et la recherche du mot a chaque fichier :
fichier=open(path_file,'r') #Ouverture du fichier
data=fichier.read() #Lecture du contenu du fichier
if data.count(mot_recherche): #Teste si la chaine est contenue dans le fichier

Propose peut-être une option pour sélectionner l'extension des fichiers à traiter (.doc, .txt, .py...)... ça allégera la boucle du walk()

C'est, bien sûr, entièrement discutable ! Et puis finalement, ce n'est peut-être pas mieux :p

SB.
lonewolfs Messages postés 51 Date d'inscription samedi 2 juin 2007 Statut Membre Dernière intervention 17 octobre 2009
12 oct. 2009 à 16:11
Merci pour tes commentaires.

Evidemment, je vais faire un effort pour la conjugaison car il est vrai que je suis allé vite et que l'erreur etait enorme.

Et vais corriger. (dès que j'aurais trouvé l'edition)

Amicalement
wkenw Messages postés 19 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 3 août 2009
12 oct. 2009 à 11:31
ah ouais, et puis les fautes de grammaire
C'est soit "choisissez", soit "choisir", pas "choisisser"
:-)
wkenw Messages postés 19 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 3 août 2009
12 oct. 2009 à 11:30
script sympa, assez utile. C'est le genre de petit utilitaire que j'apprécie ^^
ça compense les petits bogues...
Sinon, c'est un peu dommage qu'on ne voit pas les lignes dans lesquelles le mot est présent quand on fait une recherche dans un dossier.
Rejoignez-nous