input() und eingegebene Reihe/String von Symbolen komprimieren
Verfasst: Sonntag 28. November 2021, 16:23
Hallo euch,
ich mache eine exercise auf Python, aber es sind anscheinend Fehler drin.
Vor allem in folgendem Fragment erwarte ich die Eingabe, aber es ist leider keine Eingabemöglichkeit von einer Reihe aus Zahlen.... und Programm scheint lange zu laufen
Ich habe das Fragment
als separates Programm ausprobiert, aber das Ergebnis ist ähnlich...
Was ist hier falsch? Bitte um Hilfe.

ich mache eine exercise auf Python, aber es sind anscheinend Fehler drin.
Code: Alles auswählen
# Schreiben Sie Programm, welches eine eingegebene Reihe von Symbolen komprimiert
# An Eingang wird folgend aussehende Reihe von Symbolen eingegeben:
# aaabbccccdaa
# Zu ausgeben ist ein String. welches aus Symbolen (von eingegebenen String)
# und von der Anzahl der Widerholungen dieser Symbolen besteht. wie z.B.:
# a3b2c4d1a2
# --------------------------------------------------------------
text = input() # Wir erhalten eingegebenen Zeile/String <= ?!!! I think hier could be an error!!!
# I expect hier a possibility for input an str., but there isn't any possibility...
# with this kind of input() - it seems to not run !!
# text = map(int, input().split()) # second option Wir erhalten eingegebenen String
first = text[0] # Speichern von ersten Symbol
count = 0 # Zähler setzen
result = '' # und resultierende String
for symb in text:
if symb == first: # Falls Symbol == gespeicherten Symbol
count += 1 # Zähler wird um 1 größer
else:
result += first + str(count) # sonst - speichern Ergebnis
first = symb # und erneuern das gespeicherte Symbol mit seinem Zähler
count = 1
result += first + str(count) # und ergänzen ins Ergebnis das letzte Symbol
print(result)
Ich habe das Fragment
Code: Alles auswählen
text = (input()) # Erhalten String
print(text)
Was ist hier falsch? Bitte um Hilfe.