Dlaczego podproces stdout do pliku jest niepoprawny?

Mam skrypt Pythona, który wywołuje plik wykonywalny. Wyjście pliku wykonywalnego jest przekierowywane do pliku dziennika wraz z pewnymi informacjami o czasie wywołania. Na przykład, używającpython -V jako plik wykonywalny do zilustrowania:

import time, subprocess
with open('./LOGFILE.txt', 'a') as F:
    F.write('******\n')
    F.write('Events on %s :\n'%time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
    EXE_output = subprocess.call(['python', '-V'], stdout=F, stderr=F)

Wyjście plikuLOGFILE.txt jest:

Python 2.7.3
******
Events on 2013-04-10 19:27:25 :

Gdzie oczekiwałem tego w następujący sposób:

******
Events on 2013-04-10 19:27:25 :
Python 2.7.3

Napisałem****** oraz informacje o czasie w otwartym pliku dziennika przed uruchomieniem podprocesu i przekierowaniem jego wyjścia i błędu do pliku. Dlaczego takie zamówienie? i jak mogę zmienić kolejność?

questionAnswers(1)

yourAnswerToTheQuestion