[python, regexp] un truc bete

un truc bete [python, regexp] - Python - Programmation

Marsh Posté le 21-09-2005 à 16:56:01    

j'ai vraiment du mal avec les expressions regulieres, je veux chercher a l'aide d'une boucle "for" la correspondance des elements d'une liste avec un motif dont une partie est fournie avec l'argument arg[1]
 
le motif  doit etre *arg[1]*, seuleument je n'arrive pas a trouver comment resoudre ce probleme de concatenation.  
 

Code :
  1. from os import *
  2. from sys import *
  3. from shutil import *
  4. from re import *
  5. list = listdir("/home/flashball/irate/download/" )
  6. #c'est ici que ca cloche#
  7. chaine = compile('*argv[1]*' , IGNORECASE)
  8. for i in len(list):
  9.     if chaine.search(list[i]):
  10.         #suite............


merci


Message édité par flashball le 21-09-2005 à 18:56:39
Reply

Marsh Posté le 21-09-2005 à 16:56:01   

Reply

Marsh Posté le 21-09-2005 à 21:03:49    

n'utilise pas import *
 
for e in ma_miste:
 
list -> type liste, à ne pas utiliser comme nom de variable.
 
re.compile(sys.args[1], ...)

Reply

Marsh Posté le 21-09-2005 à 22:32:07    

merci a toi :D
ca me change du C et bash
ca donne ca et ca marche :  

Code :
  1. #!/usr/bin/env python
  2. import os
  3. import sys
  4. import shutil
  5. import re
  6. liste = os.listdir("/home/flashball/irate/download/" )
  7. chaine = re.compile(sys.argv[1] , re.IGNORECASE )
  8. for i in liste:
  9.     if chaine.search(i):
  10.         shutil.copy("/home/flashball/irate/download/"+i, "/home/flashball/mp3/" )
  11.         print i + " a ete copie dans /home/flashball/mp3/"


Message édité par flashball le 21-09-2005 à 22:34:31
Reply

Marsh Posté le 21-09-2005 à 23:43:03    

utilise les formats.
 
"chaine format %s" % (a,)
"%s %d %f" % (a, b, c)

Reply

Marsh Posté le 22-09-2005 à 19:06:39    

je n'ai pas compris, peux tu m'expliquer ou bien me donner un lien qui explique ca, stp ?

Reply

Marsh Posté le 22-09-2005 à 20:09:39    

ben prend ton interpréteur python et tappes
 
"n°%d" % (42,)
 
str % tuple

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed