Muchas gracias, Ricardo. 

Con tus modificaciones y consejos, funciona perfectamente. Lo he ampliado un 
poco y ahora 
también me mueve los archivos renombrados a una carpeta. 
Referente al triple bucle for, sé que era una idea horrible.(jejejeje)

Nuevamente, gracias por tu ayuda. 
  
> El 9 may 2016, a las 21:44, Ricardo Cárdenes <ricardo.carde...@gmail.com> 
> escribió:
> 
> No has comentado cómo para, pero sospecho que algún error saltará por algún 
> lado. El bucle que tienes montado es un poco caótico:
> 
> 2016-05-09 9:29 GMT-10:00 Manuel <malvare...@gmail.com 
> <mailto:malvare...@gmail.com>>:
> for video in lista_videos:
>     for subtitulo in lista_subtitulos:
>         for i in range(0,len(lista_videos)):
>  
>             if subtitulo[i][0:4] == video[i][0:4]:
>                 subtitulo_final = video[0:-4] + '.srt'
>                 os.rename(subtitulo, subtitulo_final)
> 
> 
> 
> Ahí estás iterando una vez por cada vídeo. Por cada una de esas iteraciones, 
> estás recorriendo toda la lista de subtítulos y luego tienes un tercer bucle 
> dentro (!!) que recorre los índices de la lista de vídeos... y los aplica 
> como índice al *NOMBRE* de los subtítulos y los vídeos. Como digo, un tanto 
> caótico. En su lugar podrías hacer:
> 
> for video in lista_videos:
>     for i in range(len(lista_subtitulos):
>         subtitulo = lista_subtitulos[i]
>         if subtitulo[:4] == video[:4]:
>             subtitulo_final = video[0:-4] + '.srt'
>             os.rename(subtitulo, subtitulo_final)
>             del lista_subtitulos[i]
>             break
> 
> Observa que pongo un 'break' si se renombra un subtítulo. Esto es porque 
> asumo que no habrá dos subtítulos que valgan al mismo vídeo, así que paramos 
> la búsqueda ahí, para ahorrar ciclos en el bucle (si los hubiera, el segundo 
> subtitulo *machacaría al primero*, ya que dos ficheros no pueden tener el 
> mismo nombre...)
> 
> También: si hemos sustituido un subtitulo, lo elimino de la lista, para no 
> tener que usarlo en comprobaciones futuras (que no iban a servir para nada).
> _______________________________________________
> Python-es mailing list
> Python-es@python.org
> https://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/

_______________________________________________
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a