Ausführen von Definition mit input-Befehl

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
flasche_chris
User
Beiträge: 3
Registriert: Montag 20. Februar 2023, 11:58

Hallo zusammen,

momentan lerne ich Python und hätte eine Idee wobei ich nicht weiß ob diese so wie ich mir es vorstelle realisierbar ist.

Ich möchte ein einfaches Skript in Python (Konsolenbasiert) womit ich mit Hilfe von einem Input Befehl eigene Python Skripte starten kann.

Mein Ordner hätte dann z.B. folgende Dateien:

calc-mwst.py
pw-gen.py
menu.py

Sobald ich menu.py öffne möchte ich z.B. calc-mwst eingeben und das Skript würde dann diese .py file starten.

Meine "dumme" Idee war:

Code: Alles auswählen

starten = input("Welches Programm soll gestartet werden?\n")

import starten

starten()
Leider klappte meine Idee nicht so ganz, könnt ihr mir helfen oder z.B. Lösungsansätze geben?


Vielen Dank

Eure Flasche
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ein Weg waere in diesem Fall tatsaechlich mal subprocess.run zu benutzen.
narpfel
User
Beiträge: 691
Registriert: Freitag 20. Oktober 2017, 16:10

Oder – weil du dir eine Shell nachbaust – direkt die Shell benutzen. Wenn man ein Programm mit dem Namen `calc-mwst` im `$PATH` ablegt, kann man einfach `calc-mwst` eintippen und `calc-mwst` wird ausgeführt.

Falls du tatsächlich eine Shell nachbauen möchtest, gibt es Module, die dabei helfen. `cmd` ist z. B. in der Standardbibliothek, oder das externe `prompt_toolkit`-Modul.
Antworten