2016-07-01 9 views
0

Ich habe zwei Python-Datei file1 und file2 und ich möchte diese beiden Dateien gleichzeitig auf Raspberry Pi (mit Raspian) unter Verwendung eines anderen Python laufen, und ich schrieb Code folgende Python:Python-Dateien werden nicht angezeigt, während durch eine andere Python-Code ausgeführt wird

Python-Code:

import subprocess 

print 'Process Start' 
subprocess.Popen(["python", '/home/pi/Desktop/file1.py']) 
print 'Process 1 completed' 
subprocess.Popen(["python", '/home/pi/Desktop/file2.py']) 
print 'Process 2 completed' 

Ausgang:

Process Start 
Process 1 completed 
Process 2 completed 

Allerdings denke ich, dass die file1 und file2 nicht ausgeführt werden, da beide Dateien nach Eingabe vom Benutzer fragen. Wie kann ich dieses Problem beheben?

Ich bin neu bei Python und Raspberry Pi, bitte erklären Sie die Lösung in kleinen Details.

+0

überprüfen Sie diesen Link: https://www.raspberrypi.org/forums/viewtopic.php?f=32&t=97851 –

+0

der erste Kommentar zu oben genannten Link funktioniert nicht. Wenn Sie eine mögliche Methode kennen, erwähnen Sie bitte hier –

Antwort

0

Zitiert aus https://docs.python.org/2/library/subprocess.html:

Der empfohlene Weg Subprozesse zu starten ist folgende Komfortfunktionen zu verwenden. Verwenden Sie für erweiterte Anwendungsfälle, die nicht Ihren Anforderungen entsprechen, die zugrunde liegende Popen-Schnittstelle.

subprocess.call(args, *, stdin=None, stdout=None, stderr=None, shell=False)
Führen Sie den von args beschriebenen Befehl aus. Warten Sie, bis der Befehl abgeschlossen ist, und geben Sie das Rückgabecodeattribut zurück.

Verwenden Sie dies.

Popen ist flexibler, aber das bedeutet auch, dass Sie sich um die richtigen Parameter kümmern müssen, und Sie müssen wait() für den Prozess zu beenden.

+0

nach der Verwendung der subprocess.call(), bekomme ich die gleiche Ausgabe wie ich erwähnt, ohne Datei-Konsole geöffnet, um Eingabe für Datei1 & Datei 2 bereitzustellen. Können Sie mir bitte dabei helfen Problem. –

+0

laufen Sie von einer grafischen Oberfläche? Die Subprozesse erben die Konsole ihres Elternteils. – ths

+0

ich benutze den Code auf Raspberry Pi mit Python 2.7 und Ausnahme der Ausführung der oben genannten Python-Dateien auf zwei verschiedenen Konsolen..both die Dateien nur mit GPIO-Pins nur beschäftigen. –