Ho un programma Python in cui ho alcune istruzioni Print, seguite da chiamate ad alcuni eseguibili C++ da cui ottengo anche un output sullo stdout. Quando eseguo questo script python su un terminale unix, ottengo l'output sullo schermo come previsto (nell'ordine corretto, vale a dire prima dalla stampa e poi dagli eseguibili C++). Il problema è quando reindirizzo questa uscita a un file comeIl reindirizzamento dello stdout da uno script python chiamato in ambiente * nix non funziona correttamente
python test.py > out.txt
Ottengo l'output nell'ordine errato. Ottengo prima l'output degli eseguibili C++ e poi l'altro.
Sei sicuro che tutto è in fase di scrittura STDOUT '' sys.stdout''? –
Penso che andasse allo STDOUT ... Ho ottenuto la soluzione ora ... dovrei lo stdout con sys.stdout.flush() ... – zeeshan