[Erste Versuche von mir] while-Schleife bricht ab

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
Bambie
User
Beiträge: 15
Registriert: Mittwoch 26. März 2008, 01:09

Also ersteinmal hallo zusammen, oder guten abend/nacht, wie man es sehen will ;-)

Beschäftige mich nun seit ein paar Tagen mit Python und stehe nun vor einem Problem, was mir Kopfzerbrechen bereitet:

und zwar habe ich folgende while-Schleife:

Code: Alles auswählen

while points.isdigit():
    points = points[0:-1]
Teste ich folgendes danach:

Code: Alles auswählen

>>> print points
2610</b> <a 
>>> print points.isdigit()
False
Ich dachte immer schleifen würden solange laufen, bis die Bedinung erfüllt (true) wäre, überprüfe ich das, ist die Bedinung points.isdigit() immernoch falsch, wieso bricht er die Schleife denn dann trotzdem ab?

Ich hoffe ich habe mich verständlich ausgedrückt und die Lösung ist nicht zu einfach, habe sodnern schon den ganzen Tag rumgesucht :(

MFG Bambie
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Da hast du die "while"-Schleife falsch verstanden: Dessen Körper wirds solange durchlaufen, wie die Bedingung wahr ist. Das kann man sich ganz einfach merken, wenn man einfach mal "while" ins Deutsche übersetzt ;-)

In deinem Fall sollte ein "not" das Problem lösen:

Code: Alles auswählen

while not points.isdigit():
  points = points[:-1]
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

@Bambie: Was willst du überhaupt machen? Aus einem String alle Zahlen extrahieren?

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Bambie
User
Beiträge: 15
Registriert: Mittwoch 26. März 2008, 01:09

Hat geklappt, danke :)

Mein Programm soll den Seitenquelltext einer Homepage in eine Variable speichern und daraus ziehe ich die Infos. Zum Beispiel Account gültig bis xxxxx
Dabei lasse ich dann Wöter wie gültig rausfischen und bastle dann am String rum, bis ich nur meine Info habe :)

MFG Bambie
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Bambie hat geschrieben:Dabei lasse ich dann Wöter wie gültig rausfischen und bastle dann am String rum, bis ich nur meine Info habe :)
Das ist dann Ausnahmsweise mal ein Fall bei dem Reguläre Ausdrücke nützlich sind. Du solltest überlegen sie einzusetzen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
midan23
User
Beiträge: 147
Registriert: Sonntag 21. Mai 2006, 21:41
Wohnort: Müchen
Kontaktdaten:

Da Reguläre Ausdrücke etwas komplex sind (vor allem, wenn man sie noch nie verwendet hat), kann man in diesem Fall auch BeautifulSoup verwenden ...
Jan-Peer
User
Beiträge: 166
Registriert: Dienstag 2. Oktober 2007, 10:55

midan23 hat geschrieben:Da Reguläre Ausdrücke etwas komplex sind (vor allem, wenn man sie noch nie verwendet hat), kann man in diesem Fall auch BeautifulSoup verwenden ...
Mit der Herangehensweise wird man nie anfangen, sich mit ihnen zu beschäftigen ... :wink:

(Ich wollte damit nicht sagen, daß BeautifulSoup ein schlechter Ansatz ist)
BlackJack

Man kann BS und REs auch verbinden. BS erlaubt an einigen Stellen auch kompilierte REs als Argumente.
Antworten