String in eine Liste
Verfasst: Montag 24. April 2017, 10:04
Hallo erstmal.
Kurz zu meinem Problem
Ich würde gerne eine Usereingabe aufteilen.
Da die Usereingabe aber ein String zurück gibt ist das ganze nicht so einfach.
An sich soll der Benutzer folgenden eingeben: 1,2,3,4,(5,6,7(8,9,a,b),V)
zum Beispiel
Nun möchte ich diese eingabe ein wenig auf teilen und das ganze als ausgabe ausgeben.
Aber halt als
Hier sind ihre zahlen:
Hier ihre Tupple
Hier die Lsiten
Das ich alles ausgegeben bekomme sortiert als int, Strings und einzelnen Buchstaben habe ich schon hinbekommen.
Jedoch nicht das ich die Tupple und Listen als tupple und Listen zurück bekommen.
Hier mal mein Code um die Komplette eingabe aufzuteilen und als sortiertes einzelnes auszugeben.
Eventuell versteht ja jemand was ich möchte und kann mir helfen, kann es nicht wirklich beschreiben
Wie gesagt der Code gibt mir alles aufgeteilt aus.
Das sollte die neue Version nicht machen , sondern die touple als touple zurück geben
Kurz zu meinem Problem
Ich würde gerne eine Usereingabe aufteilen.
Da die Usereingabe aber ein String zurück gibt ist das ganze nicht so einfach.
An sich soll der Benutzer folgenden eingeben: 1,2,3,4,(5,6,7(8,9,a,b),V)
zum Beispiel
Nun möchte ich diese eingabe ein wenig auf teilen und das ganze als ausgabe ausgeben.
Aber halt als
Hier sind ihre zahlen:
Hier ihre Tupple
Hier die Lsiten
Das ich alles ausgegeben bekomme sortiert als int, Strings und einzelnen Buchstaben habe ich schon hinbekommen.
Jedoch nicht das ich die Tupple und Listen als tupple und Listen zurück bekommen.
Hier mal mein Code um die Komplette eingabe aufzuteilen und als sortiertes einzelnes auszugeben.
Eventuell versteht ja jemand was ich möchte und kann mir helfen, kann es nicht wirklich beschreiben

Code: Alles auswählen
resultint=[]
resultstr=[]
resultword=[]
###Prüfen auf inhalt der Liste
def check(liste):
# iteration durch die Liste und sortieren in passenden unterlisten
for i in liste:
try:
i = int(i)
resultint.append(i)
except:
# if i in liste =="(" or i in liste =="[":
# continue
if type(i) == list or type(i) == tuple:
check(i)
elif type(i) == str and len(i)==1:
resultstr.append(i)
else:
resultword.append(i)
def bubblesort(sorti):
durchlaeufe = len(sorti)
while durchlaeufe >= 1:
for k in range(len(sorti) - 1):
if sorti[k] > sorti[k+1]:
sorti[k],sorti[k+1]=sorti[k+1],sorti[k]
durchlaeufe = durchlaeufe - 1
return sorti
while True:
#1,2,3,(4,5,6),7,[Hallo,Danke,Bitte),a,b,c,d,g,e,(a,(b,[c],e),a),n
eingabe= input("Bitte geben Sie das ihre Daten ein getrennt durch ein ,\nIhr Eingabe bitte:")
eingabe = eingabe.replace("(","").replace(")", "").replace("[", "").replace("]","")
liste = eingabe.split(',')
print(type(eingabe))
check(liste)
bubblesort(resultint)
bubblesort(resultstr)
bubblesort(resultword)
print("Es wurden folgende Zahlen eingegeben",resultint)
print("Es wurden folgende Buchstaben eingegeben",resultstr)
print("Es wurden folgende Worte eingegeben",resultword)
break
Das sollte die neue Version nicht machen , sondern die touple als touple zurück geben