Hallo liebe Forum-User,
Ich möchte mit Python den User dazu bringen bestimmte Variablen über die Konsole eingeben zu können. Diese Variablen sollen dann im Code später aufgerufen und weiterverwendet werden ...
Kann mir jemand sagen wie man das macht?
Danke schon mal
Kikone
Eingaben über die Konsole lesen mit Python ... Wie?
Suchst du "raw_input"?
Oder darauf aufbauend (und ganz prmitiv):
Oder meinst du Parameter, die du beim Programmstart übergeben möchtest?
Oder darauf aufbauend (und ganz prmitiv):
Code: Alles auswählen
>>> "spam=42".split("=", 1)
['spam', '42']
Das Leben ist wie ein Tennisball.
Ich hab das mal mit Java programmiert .. das ging mit stdin.readline () ...
So in etwa:
InputStreamReader in = new InputStreamReader(System.in);
BufferedReader stdin = new BufferedReader(in);
String eingabe;
System.out.print("Bitte Text eingeben: ");
eingabe = stdin.readLine();
System.out.print(eingabe);
Genau das Gleiche möchte ich jetzt mit Python machen. Also das der Benutzer ein Wort eingibt z.B. "Node01" und dass mit dieser Variablen das Skript dann weiterlaufen kann ...
So in etwa:
InputStreamReader in = new InputStreamReader(System.in);
BufferedReader stdin = new BufferedReader(in);
String eingabe;
System.out.print("Bitte Text eingeben: ");
eingabe = stdin.readLine();
System.out.print(eingabe);
Genau das Gleiche möchte ich jetzt mit Python machen. Also das der Benutzer ein Wort eingibt z.B. "Node01" und dass mit dieser Variablen das Skript dann weiterlaufen kann ...
Code: Alles auswählen
In [9]: eingabe=raw_input("Bitte Text eingeben: ")
Bitte Text eingeben: Node01
In [10]: print eingabe
Node01
MerciDill hat geschrieben:Code: Alles auswählen
In [9]: eingabe=raw_input("Bitte Text eingeben: ") Bitte Text eingeben: Node01 In [10]: print eingabe Node01
Jetzt steh ich vor einer weiteren Hürde ... hat hier jemand eine Idee?
Und zwar:
Ich hab hier ein skript, welches eine Applikation für einen Anwendungsserver installiert ... das skript funktioniert soweit ... jedoch möchte ich jetzt noch eine benutzereingabe hinzufügen ... wie man das macht weiss ich auch ... nur die pfade sind so ewig lang ...
Hat hier jemand eine Idee wie man das programmiertechnisch lösen könnte?
Ein Pfad zu einer installierbaren App sieht z.B. so aus ...
C:\IBM\WebSphere\AppServer\installableApps\query.ear
Und zwar:
Ich hab hier ein skript, welches eine Applikation für einen Anwendungsserver installiert ... das skript funktioniert soweit ... jedoch möchte ich jetzt noch eine benutzereingabe hinzufügen ... wie man das macht weiss ich auch ... nur die pfade sind so ewig lang ...
Hat hier jemand eine Idee wie man das programmiertechnisch lösen könnte?
Ein Pfad zu einer installierbaren App sieht z.B. so aus ...
C:\IBM\WebSphere\AppServer\installableApps\query.ear
wenn das eine konsolenanwendung werden soll könntest du dir eine autovervollständigung basteln, ähnlich wie in der windows shell wenn autocompletion char gesetzt ist.
das ist nicht weiter problematisch, aber dann solltest du doch erstmal das tutorial durcharbeiten.
oder machst nen file-select-popup mit qt oder wx oder so...
da hab ich aber kein plan von
das ist nicht weiter problematisch, aber dann solltest du doch erstmal das tutorial durcharbeiten.
oder machst nen file-select-popup mit qt oder wx oder so...
da hab ich aber kein plan von
- cofi
- Python-Forum Veteran
- Beiträge: 4432
- Registriert: Sonntag 30. März 2008, 04:16
- Wohnort: RGFybXN0YWR0
Da gibts natürlich mehrere Möglichkeiten
Die einfachste wäre wohl das Skript mit dem Pfad als Parameter aufzurufen (`sys.argv`) da sollte es auch ne Pfadvervollstädigung selbst durch die Eingabeaufforderung geben - wenn ich mich da recht erinner.
Andere Möglichkeit wärs das Verzeichnis vorzugeben und die Apps dann mit einem Menü aufzulisten aus dem der Benutzer dann wählt.
Und und und ....
Die einfachste wäre wohl das Skript mit dem Pfad als Parameter aufzurufen (`sys.argv`) da sollte es auch ne Pfadvervollstädigung selbst durch die Eingabeaufforderung geben - wenn ich mich da recht erinner.
Andere Möglichkeit wärs das Verzeichnis vorzugeben und die Apps dann mit einem Menü aufzulisten aus dem der Benutzer dann wählt.
Und und und ....
Das wäre genau was ich brauchen würde .... Mit welcher Funktion geht das?cofi hat geschrieben: Andere Möglichkeit wärs das Verzeichnis vorzugeben und die Apps dann mit einem Menü aufzulisten aus dem der Benutzer dann wählt.
Code: Alles auswählen
from magic import *
show_select_apps_dialog(folder)
- cofi
- Python-Forum Veteran
- Beiträge: 4432
- Registriert: Sonntag 30. März 2008, 04:16
- Wohnort: RGFybXN0YWR0
Code: Alles auswählen
app_path = r"C:\IBM\WebSphere\AppServer\installableApps"
choices = dict(enumerate(os.listdir(app_path))
#choices visualisiern
choice = int(raw_input("Nummer?"))
app = choices[choice]
Zuletzt geändert von cofi am Mittwoch 29. April 2009, 16:17, insgesamt 1-mal geändert.
- b.esser-wisser
- User
- Beiträge: 272
- Registriert: Freitag 20. Februar 2009, 14:21
- Wohnort: Bundeshauptstadt B.
Das ist der (hier unnötige) "\" als letztes Zeichen im sog. Raw-string, mach den einfach weg (rawstrings dürfen nicht mit einer ungeraden Anzahl \-s enden)).
Und benutze os.path.join() um Dateipfade zusammenzusetzen
Und benutze os.path.join() um Dateipfade zusammenzusetzen
- cofi
- Python-Forum Veteran
- Beiträge: 4432
- Registriert: Sonntag 30. März 2008, 04:16
- Wohnort: RGFybXN0YWR0
Wobei das in dem Fall eher verschleiernd wirkt.b.esser-wisser hat geschrieben:Und benutze os.path.join() um Dateipfade zusammenzusetzen
Solange das eine Konstante ist, die man als Teil der Einstellungen betrachten kann macht ein Raw-String mehr Sinn, weil man den nicht dechiffrieren muss, um an den Pfad zu gelangen
Aber ansonsten hast du natürlich recht.