Python ohne doppelten Input?

2 Antworten

Kennst du Slicing?

>>> huhu = "abcdefg"
>>> huhu
'abcdefg'
>>> huhu[0:4]
'abcd'
>>> huhu[4:]
'efg'

Das kannst du hier gleich zweimal benutzen. Der Benutzer gibt ein

internet www.example.com

...und du prüfst, ob [0:7] "internet" ist und liest die Adresse aus [8:] raus.

Du könntest den input in einer Variablen (beispielsweise eingabe benannt) speichern und dann mit eingabe[:8] die ersten 8 Zeichen betrachten und mit "internet" vergleichen, oder die ersten 9 Zeichen mit "internet ".

Beispiel:

eingabe = input(">>> ")
if eingabe[:9] == "internet ":
    input2 = eingabe[9:]
    print("Eingegebene Seite:", input2)

Vielleicht wäre es aber sinnvoller den String mit der split()-Methode aufzuspalten, statt sich auf eine feste Länge zu beschränken. Insbesondere dann, wenn auch noch andere Dinge statt nur "internet" vorne in Frage kommen sollen.

Beispiel:

eingabe = input(">>> ")
input1, input2, *_ = eingabe.split(maxsplit=1)+[None, None]
if input1 == "internet":
     print("Eingegebene Seite:", input2)

(Dabei habe ich input1 bzw. input2 auf None gesetzt, wenn nicht genügend Eingabe vorhanden ist.)


troloxi 
Fragesteller
 25.01.2021, 00:06

Das funkrionierr ja schon gut. Kann cih das auch bei einer Entry in Tkinter nutzen?

0