glob() Caseinsensitive

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.
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

glob() Caseinsensitive

Beitragvon veers » Donnerstag 5. Juli 2007, 12:59

Gibt es eine Möglichkeit glob() so aufzurufen dass es caseinsensitive ist?
Kann ich der Doku und bei google nichts dazu finden.

Gruss,
Jonas
Benutzeravatar
HWK
User
Beiträge: 1295
Registriert: Mittwoch 7. Juni 2006, 20:44

Beitragvon HWK » Donnerstag 5. Juli 2007, 13:17

Ich weiß nicht ganz genau, was Du meinst. Bei mir liefern aber z.B. glob.glob('*.log') und glob.glob('*.LOG') dasselbe Ergebnis. Ich verwende Python 2.4.4 unter Windows XP.
MfG
HWK
BlackJack

Beitragvon BlackJack » Donnerstag 5. Juli 2007, 13:21

@veers: Ja, ruf es unter Windows auf. ;-)
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Beitragvon CM » Donnerstag 5. Juli 2007, 13:22

Aus der Doku:
The glob module finds all the pathnames matching a specified pattern according to the rules used by the Unix shell.

Wenn es unter Windows also nicht nach Groß- und Kleinschreibung unterscheidet, liegt das vielleicht am OS?

Wie auch immer: glob unter *NIX ist wenn es nicht case sensitive sein soll, nicht das Mittel der Wahl. os.path könnte eine Alternative sein.

Gruß,
Christian
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Beitragvon veers » Donnerstag 5. Juli 2007, 13:27

Genau, ich werde jetzt Windows Evangelist weil dort glob Case Insensitive ist. :twisted:

Naja dann werde ich wohl mit fnmatch + os.listdir zurecht kommen müssen.
Benutzeravatar
mq
User
Beiträge: 124
Registriert: Samstag 1. Januar 2005, 19:14

Beitragvon mq » Donnerstag 5. Juli 2007, 13:28

CM hat geschrieben:Wenn es unter Windows also nicht nach Groß- und Kleinschreibung unterscheidet, liegt das vielleicht am OS?
Tut es. Dateinamen sind unter Windows nicht case-sensitive.

Zum Thema:
glob ist ja auch nur ein relativ kleiner Wrapper um fnmatch, und mit fnmatch laesst sich meines Wissens nach auch case-insensitive arbeiten. Von daher muesste man das halt nachbauen.
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Beitragvon CM » Donnerstag 5. Juli 2007, 17:46

veers hat geschrieben:Genau, ich werde jetzt Windows Evangelist weil dort glob Case Insensitive ist.
Naja dann werde ich wohl mit fnmatch + os.listdir zurecht kommen müssen.

Ich finde es eigentlich toll unter Linux leichter case sensitiv arbeiten zu können.
Und ich weiß ja nicht, was Du machen willst, aber ggf. hilft Dir ein Regulärer Ausdruck in Verbindung mit os.walk oder os.listdir weiter - habe ich auch schon erfolgreich gemacht, ohne das es spürbar langsam wurde.

@lumax: Gibt es hier irgendwo einen Modus für rethorische Fragen? ;-)

Gruß,
Christian
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Beitragvon veers » Donnerstag 5. Juli 2007, 19:13

@CM: Gibt es hier irgendwo einen Modus für ironische Antworten?

Wer ist online?

Mitglieder in diesem Forum: Google [Bot]