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>: > 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/