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.
ich habe eine liste mit Strings ["1234", "Servus", "5678", "Guten Tag" "5348"]. Nun würde ich gerne überprüfen, ob die ersten vier Zeichen in einem String Zahlen sind.
Wenn es aber doch auch Mischstrings gibt, wobei aber feststeht das - wenn - dann exakt die ersten vier Zeichen Ziffern sind, dann geht es mit Slicing sicherer:
wliste = ["1234", "Servus", "5678", "Guten Tag" "5348"]
for entry in wliste:
if entry[:4].isdigit:
print entry
[url=http://www.python-forum.de/post-86552.html]~ Wahnsinn ist auch nur eine andere Form der Intelligenz ~[/url]
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
In [1]: import re
In [2]: if re.match('^\d{4}', '3214deinstring'): print 'Ist OK'
...:
Ist OK
In [3]: if re.match('^\d{4}', '321keinstring'): print 'Ist OK'
...:
In [4]:
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
lunar hat geschrieben:Das dürfte aber um einiges langsamer sein als Slicing und isdigit
Ja, RegEX ist im allgemeinen langsamer und wohl nur fuer komplexere Dinge wirklich sinnvoll. Aber das weiß Leonidas mit Sicherheit selbst und hat das Beispiel dementsprechend nur der Vollstaendigkeit halber hier angebracht.
[url=http://www.python-forum.de/post-86552.html]~ Wahnsinn ist auch nur eine andere Form der Intelligenz ~[/url]
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
lunar hat geschrieben:Das dürfte aber um einiges langsamer sein als Slicing und isdigit
Uh, und ich dacht schon Zustandsautomaten haben Bytevergleich überholt
Nein, im Ernst - Klar, aber ich muss zugeben, dass sich das Problem recht elegant mit regulären Ausdrücken lösen lässt. Ich hatte übrigens den Satz mit dem Hammer und den regulären Ausdrücken im Kopf, wenn du es genau wissen willst.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
@Leonidas, nkoehring
Mir ist schon klar, dass ihr das wisst. Ich nehme das Posting auch unverzüglich zurück, wenn ihr mir garantieren könnt, dass der *OP* das auch weiß