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/