Użycie Pythona do wykonania polecenia dla każdego pliku w folderze

Próbuję utworzyć skrypt Pythona, który:

Zajrzyj do folderu „/ input”Dla każdego filmu w tym folderze uruchom komendę mencoder (aby przekodować je do grywalnej na moim telefonie)Po zakończeniu pracy mencoder usuń oryginalny film.

To nie wydaje się zbyt trudne, ale ssam w pythonie :)

Jakieś pomysły na to, jak powinien wyglądać skrypt?

Pytanie dodatkowe: Czy powinienem użyć

os.system

lub

subprocess.call

?

Wywołanie podprocesu wydaje się pozwalać na bardziej czytelny skrypt, ponieważ mogę napisać takie polecenie:

cmdLine = ['mencoder', sourceVideo, '-ovc', 'copy', '-oac', 'copy', '-ss', '00: 02: 54 ',' -endpos ', '00: 00: 54 ',' -o ', destinationVideo]

EDYCJA: Ok, to działa:

import os, subprocess

bitrate = '100'
mencoder = 'C:\\Program Files\\_utilitaires\\MPlayer-1.0rc2\\mencoder.exe'
inputdir = 'C:\\Documents and Settings\\Administrator\\Desktop\\input'
outputdir = 'C:\\Documents and Settings\\Administrator\\Desktop\\output'

for fichier in os.listdir(inputdir):
    print 'fichier :' + fichier
    sourceVideo = inputdir + '\\' + fichier
    destinationVideo = outputdir + '\\' + fichier[:-4] + ".mp4"

    commande = [mencoder,
               '-of',
               'lavf',
               [...]
               '-mc',
               '0',

               sourceVideo,
               '-o',
               destinationVideo]

    subprocess.call(commande)

os.remove(sourceVideo)
raw_input('Press Enter to exit')

Usunąłem polecenie mencodera, dla jasności i dlatego, że wciąż nad nim pracuję.

Dziękujemy wszystkim za wkład.

questionAnswers(6)

yourAnswerToTheQuestion