Die Suche ergab 87 Treffer

von Luzandro
Montag 5. März 2007, 12:43
Forum: Allgemeine Fragen
Thema: Lines aus Files mit verschiedenen Line endings extrahieren
Antworten: 8
Zugriffe: 1523

Hätt ich auch, wenn ichs nicht schon wieder vergessen hätte ;)
von Luzandro
Montag 5. März 2007, 11:59
Forum: Allgemeine Fragen
Thema: Lines aus Files mit verschiedenen Line endings extrahieren
Antworten: 8
Zugriffe: 1523

Du kannst re.split nehmen um mehrere Separator anzugeben

Code: Alles auswählen

re.split("\r\n|\n|\r", text)
von Luzandro
Freitag 2. März 2007, 17:21
Forum: Allgemeine Fragen
Thema: Bewertung meines ersten ernst gemeinten Python-Codes
Antworten: 18
Zugriffe: 2897

Zu Luzandros RE-Verbesserung: Diese Methode: addr = longAddrRE.search(addr).group(1) hat einen Nachteil. Gibt es keinen Treffer, gibt search() None zurück, was bedeutet, dass group() nicht aufgerufen werden kann. Es müsste dann schon eher so heißen: foo = longAddrRE.search(addr) if foo is not None:...
von Luzandro
Freitag 2. März 2007, 12:43
Forum: Allgemeine Fragen
Thema: Bewertung meines ersten ernst gemeinten Python-Codes
Antworten: 18
Zugriffe: 2897

Beim email-Pattern müsste in der ersten Gruppe zumindest noch ein "." vorkommen und das ganze sollte noch case-insensitive sein. addr = longAddrRE.sub(r"\1", addr) ist zwar korrekt und kürzer, ich persönlich würde es aber dennoch anders schreiben: addr = longAddrRE.search(addr).g...
von Luzandro
Freitag 23. Februar 2007, 16:00
Forum: Allgemeine Fragen
Thema: Wieder mal Regular Expressions
Antworten: 13
Zugriffe: 3454

Re: Wieder mal Regular Expressions

Wenn ich dich richtig verstanden habe, müsste auch das reichen:

Code: Alles auswählen

map(len, re.findall(r"\S+|\s+", text))
von Luzandro
Freitag 23. Februar 2007, 15:38
Forum: Allgemeine Fragen
Thema: RegEx-Performance Beispiele
Antworten: 7
Zugriffe: 3305

Was verstehst du unter "dieses Problem" und "konventionell"? Das erste dort angegebene Beispiel mit "a?^na^n" ist ja sowieso nur zur Demonstration geeignet, um zu sehen _dass_ ein Problem auftritt und recht einleuchtend ist _warum_ es in diesem Fall auftritt - allerding...
von Luzandro
Freitag 23. Februar 2007, 07:45
Forum: Allgemeine Fragen
Thema: RegEx-Performance Beispiele
Antworten: 7
Zugriffe: 3305

Re: RegEx-Performance Beispiele

print "%.2f usec/pass" % (loop * t1.timeit(number = loop) / loop) Was soll denn der Sinn von diesem *loop/loop sein? error_l1 = re.compile(r'error|miss|issing|inval|nvalid|math') error_l2 = re.compile(r'error|m?(iss(?:ing)?|ath)|i?nval(?:id)?') Die Ausdrücke sind auch nicht wirklich equiv...
von Luzandro
Mittwoch 21. Februar 2007, 09:41
Forum: Allgemeine Fragen
Thema: Einige Fragen zu Klassen
Antworten: 13
Zugriffe: 2676

Ah! Klar, danke - sonst müsste ich mir ja beim Ableiten Gedanken über interne Details der Klasse machen
von Luzandro
Mittwoch 21. Februar 2007, 09:12
Forum: Allgemeine Fragen
Thema: Einige Fragen zu Klassen
Antworten: 13
Zugriffe: 2676

Re: Einige Fragen zu Klassen

Jepp. Das ist nur ein Styleguide. Man kann auf Methoden und Attribute mit einem _ oder __ weiterhin von außen zugreifen. Wobei bei 2 Unterstrichen der Name des Attributes geändert wird und man nicht direkt mit dem eigentlichen Namen darauf zugreifen kann, aber was der Sinn davon ist weiß ich eigent...
von Luzandro
Freitag 16. Februar 2007, 11:56
Forum: Allgemeine Fragen
Thema: [gelöst] RegExp - mehrere Treffer in einer Zeile
Antworten: 10
Zugriffe: 3136

querdenker hat geschrieben:habe das gerade mal nachgestellt:

Code: Alles auswählen

>>> import re, timeit
>>> input='x'  'XXX'*666 + 'x'
Du hast einen anderen input: das *666 bezieht sich bei dir auf den String "xXXX" und damit gibt es viel früher einen Match.
von Luzandro
Donnerstag 15. Februar 2007, 18:24
Forum: Allgemeine Fragen
Thema: [gelöst] RegExp - mehrere Treffer in einer Zeile
Antworten: 10
Zugriffe: 3136

>>> import re, timeit >>> input = "x"+ "XXX"*666 + "x" >>> p1 = re.compile("x([^x]+)x") >>> p2 = re.compile("x(.+?)x") >>> timeit.Timer("p1.search(input)", "from __main__ import p1, input").timeit() 3.76698899269104 >>> timeit.Ti...
von Luzandro
Donnerstag 15. Februar 2007, 17:54
Forum: Allgemeine Fragen
Thema: [gelöst] RegExp - mehrere Treffer in einer Zeile
Antworten: 10
Zugriffe: 3136

Es ist auch schneller, auch wenn man das wohl meistens vernachlässigen kann, wenn es nicht gerade besonders oft in einer Schleife aufgerufen wird.
Ich würde dennoch die Negation bevorzugen, da damit expliziter angegeben wird, was gesucht ist.
von Luzandro
Donnerstag 15. Februar 2007, 13:23
Forum: Allgemeine Fragen
Thema: in for ... in ... auf index zugreifen
Antworten: 10
Zugriffe: 2813

Dill hat geschrieben: >>> s
'\x01'
>>> print s
☺ #<-- hier hätte ich gern die hex darstellung!!

Code: Alles auswählen

>>> print '\x01'.encode("string-escape")
\x01
von Luzandro
Mittwoch 14. Februar 2007, 07:30
Forum: Allgemeine Fragen
Thema: [Gelöst] Frage zu non-overlapping matches.
Antworten: 8
Zugriffe: 2076

Machbar ja, sinnvoll in meiner Meinung nach nicht - dein voriger Ausdruck sucht den längsten Match, der _irgendetwas_ findet, also einfach alles. Was du willst ist der kürzeste Teil, der _nicht_ deine anderen Teile matcht - solche negativen Geschichten als regex ausdrücken ist etwas mühsam, aber in ...
von Luzandro
Dienstag 13. Februar 2007, 16:28
Forum: Allgemeine Fragen
Thema: Typenumwandlung
Antworten: 16
Zugriffe: 3393

Benchmark ist hier aber IMHO relativ egal - einen Unterschied macht es allerdings, wenn du mehrere Referenzen darauf hast und den Inhalt ändern willst, anstatt "zahlen" an etwas anderes zu binden
von Luzandro
Dienstag 13. Februar 2007, 08:10
Forum: Allgemeine Fragen
Thema: Bildschirm löschen bei Programmstart/ während Programmausfüh
Antworten: 2
Zugriffe: 4586

Das einfachste ist wohl du verwendest

Code: Alles auswählen

os.system("clear")
solltest du das Programm auch unter Windows verwenden wollen, musst du eben noch eine Abfrage einbauen und "cls" nehmen
von Luzandro
Montag 12. Februar 2007, 10:29
Forum: Offtopic
Thema: Ubuntu oder Kubuntu?
Antworten: 100
Zugriffe: 20849

Bei XP gabs auch schon virtuelle Desktops mit den PowerToys: http://www.microsoft.com/windowsxp/down ... rtoys.mspx
von Luzandro
Sonntag 11. Februar 2007, 18:13
Forum: Allgemeine Fragen
Thema: Magisches Verhalten in Perl und Python
Antworten: 64
Zugriffe: 5594

Und ich hatte schon gehofft, birkenfeld hätte endlich ein Schlusswort gefunden... Wenn ich mit einer bestimmten Klassen arbeiten möchte, muß ich auch die Dokumentation der entsprechenden Basisklassen kennen. Das erfordert eine Einarbeitung, die recht umfangreich sein kann. Was bitteschön ist da der ...
von Luzandro
Sonntag 11. Februar 2007, 10:13
Forum: Allgemeine Fragen
Thema: PythonWin vergleichbarer Editor für Linux?
Antworten: 13
Zugriffe: 4183

Eclipse mit pydev-plugin sollte auch Codecompletion können, auch wenn ich das ein wenig träge in Erinnerung habe