Frage zu python

He S. schrieb:

Hallo,

mit einem python Script wird eine exe Datei ausgeführt. Nachdem die exe Datei gestartet wurde, erscheint im Windows Kommander eine Aufforderung, indem ein Befehl (Textform) eingegeben werden soll. Wie kann dies mit python umgesetzt werden?

Na dann musst Du erstmal den „Windows Kommander“ programmieren und erstellen ;-)

Gast

Im Editor dein Pythonprogramm (Script) erstellen, abspeichern zum Beispiel unter dasprogramm.py In der cmd-Box : Ins Verzeichnis wechseln wo dasprogramm.py liegt. Aufruf dann: python dasprogramm.py

Spaß haben :)

Die Frage ist etwas wirr formuliert. Möglicherweise suchst du aus dem python-Modul subprocess die Funktion run oder Popen. Die kann man so verwenden, dass stdin, stdout und stderr des Unterprozesses mit dem Python-Programm verbunden werden, so dass des dem aufgerufenen Programm Texteingaben schicken kann.

He S. schrieb:

mit einem python Script wird eine exe Datei ausgeführt. Nachdem die exe Datei gestartet wurde, erscheint im Windows Kommander eine Aufforderung, indem ein Befehl (Textform) eingegeben werden soll. Wie kann dies mit python umgesetzt werden?

Das habe ich leider nicht verstanden, könntest Du das bitte etwas genauer erklären?

OP

Guten Morgen,

mit Windows Kommander meinte ich die Konsole (cmd.exe). In dem python Skript wird eine exe Datei ausgeführt. Sobald die exe Datei ausgeführt wird, erscheint in der Konsole eine Aufforderung mit 'continue' zu bestätigen. => man muss den Befehl eintippen und danach mit return bestätigen.

He S. schrieb:

Guten Morgen,

mit Windows Kommander meinte ich die Konsole (cmd.exe). In dem python Skript wird eine exe Datei ausgeführt. Sobald die exe Datei ausgeführt wird, erscheint in der Konsole eine Aufforderung mit 'continue' zu bestätigen. => man muss den Befehl eintippen und danach mit return bestätigen.

Und diese Eingabe soll jetzt dein Python-Skript erledigen? Dann gilt das, was ich geschrieben habe.

(Firma: Privat)

Von Python aus eine EXE-Datei starten geht so:

import os x=os.system("Programm.EXE")

Wenn "Programm.EXE" eine Eingabe erwartet, erscheint daß auf den Bildschirm.

Wenn Python eine Eingabe machen soll, geht das so:

T=input("Bitte Text eingeben ")

Der Text ist dann in T gespeichert.

He S. schrieb:

mit Windows Kommander meinte ich die Konsole (cmd.exe). In dem python Skript wird eine exe Datei ausgeführt. Sobald die exe Datei ausgeführt wird, erscheint in der Konsole eine Aufforderung mit 'continue' zu bestätigen. => man muss den Befehl eintippen und danach mit return bestätigen.

Ok. Und du möchtest wissen, wie so ein Python-Skript das macht?

Also zunächst ist es ja so, dass (anders als bei Unix) nur wenige Windows-Anwendungen (also .exe-Dateien) überhaupt Texteingaben über ein stdin entgegennehmen.

Aber nehmen wir an, du hättest eine solche Anwendung.

Und jetzt willst du diese Anwendung aus einem Python-Skript heraus starten, und zwar so, dass sich dem Benutzer ein Kommandofenster öffnet, welches die Ausgabe (stdout) dieser Anwendung zeigt, und in dem Eingaben des Benutzers an stdin der Anwendung weitergeleitet werden?

LG, Sebastian

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 3 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.