Heuristik- Pfadbuchstabe wird unter Linux "verschluckt&

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
Flo668
User
Beiträge: 39
Registriert: Mittwoch 23. Juli 2008, 10:41

Hallo,

ich habe ein merkwürdiges Problem- unter Windows funktioniert der "Salat", unter Linux wird immer der erste Buchstabe eines Folders (hier der jeweils in "dirs" bzw später in relroot stehende) verschluckt:

Code: Alles auswählen

  
        sequences = {}
        markchar = '#'
        heure = re.compile( '(\\d+)\\D*$')
        heure2 = re.compile( '(.*)\\.\\%s+(\\.\\D*)$' % markchar)

        lsrc = len(self._shotFolder) + 1

        for root, dirs, files in os.walk(self._shotFolder, topdown = True):
            relroot = root[lsrc:]

            for fn in files:


                # heuristic: for each file, get the last contiguous numeric seq
                # of characters within the file, and the rest of the filename
                # becomes the key for the sequence.
                
                    mo = heure.search(fn)
                    if mo:
                       key = fn[:mo.start(1)] + \
                       markchar * len(mo.group(1)) + \
                       fn[mo.end(1):]

                    else:
                       key = fn

                    key = join(relroot, key)
Da unter Windows (was ich nutze) der Kram funktioniert, aber beim Linux Kollegen Probleme entstehen, hoffe ich hier vielleicht wen zu finden, der mit erklären kann, weshalb diese entstehen.

Das wäre ausgesprochen nett!
BlackJack

Ich vermute mal ein Problem um Zeile 10 herum. Kann es sein, dass Du da ein Zeichen zu viel entfernst?
Flo668
User
Beiträge: 39
Registriert: Mittwoch 23. Juli 2008, 10:41

Das stimmt wohl. Danke.

Was aber das Mysterium noch nicht auflöst, warum die Sache unter Windows funktioniert.
BlackJack

Dazu müsstest Du einfach mal die Zeichenketten ausgeben und vergleichen. Es reicht ja schon, wenn sich die Pfade durch ein vorangestelltes './' unterscheiden, oder so etwas in der Richtung.
Antworten