Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Python - Output di un programma
Forum - Python - Output di un programma

Avatar
Zani88 (Member)
Pro


Messaggi: 136
Iscritto: 07/05/2006

Segnala al moderatore
Postato alle 12:11
Domenica, 27/07/2008
Vi spiego il mio problema. Ho un file eseguibile prova.exe che prende come input un file e come output ha un file (quindi non ha bisogna di nessun parametro per funzionare), però siccome è un'elaborazione lunga ogni tot tempo stampa a video un messaggio del tipo 1000 operazioni eseguite. Ora volevo realizzare un interfaccia grafica in python per settare i parametri del file di input. Quindi uno avvia il programma in python modifica i parametri e poi ci sarà un bottone che avvia il programma eseguibile. Ora io ho provato seguendo qualche istruzione trovata su internet a catturare l'output del programma ma non funziona, però se al posto del programma eseguibile ci metto un comando dos funziona (tipo dir)


Codice sorgente - presumibilmente Python

  1. import os
  2. command = "dir"
  3. fout = os.popen(command)
  4. line = fout.read()
  5. print line
  6. raw_input ()



Edit: il codice funziona solo che stampa il risulato quando il programma è terminato, io vorrei che stampasse in tempo reale.

Ultima modifica effettuata da Zani88 il 28/07/2008 alle 10:05
PM Quote
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6230
Iscritto: 04/12/2003

Segnala al moderatore
Postato alle 4:48
Martedì, 29/07/2008
Dopo ogni print prova a fare un flush del buffer.


Il mio blog: https://piero.dev
PM Quote
Avatar
Zani88 (Member)
Pro


Messaggi: 136
Iscritto: 07/05/2006

Segnala al moderatore
Postato alle 18:05
Martedì, 29/07/2008
Ho risolto!

Codice sorgente - presumibilmente Python

  1. import os
  2. command = "prova.exe"
  3. fout = os.system(command)
  4. line = fout.read()
  5. print line
  6. raw_input ()



Anche se non capisco bene perché funzioni... :-|

(rimpiango un po' il C)

PM Quote