os.path.join verschluckt angaben?

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
Gremlin
User
Beiträge: 166
Registriert: Freitag 28. Mai 2010, 23:49

Kann mir eventuell jemand folgendes erklären? Denn ich steh grad aufm Schlauch, oder so...
Python 2.7 (r27:82525, Jul 4 2010, 07:43:08) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> dst = u'C:\\das\\ziel'
>>> dst
u'C:\\das\\ziel'
>>> src = u'C:\\das\\ziel\\die\\quelle'
>>> src
u'C:\\das\\ziel\\die\\quelle'
>>> path = u'C:\\das\\ziel\\die\\quelle\\und_eben_nochn_ordner'
>>> path
u'C:\\das\\ziel\\die\\quelle\\und_eben_nochn_ordner'
>>> import os
>>> os.path.join(dst, path.replace(src, ''))
u'\\und_eben_nochn_ordner'
>>> os.path.join(dst, path.replace(src, u''))
u'\\und_eben_nochn_ordner'
>>> dst + path.replace(src, '')
u'C:\\das\\ziel\\und_eben_nochn_ordner'
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Steht in der Doku: http://docs.python.org/library/os.path. ... .path.join

Was is fuer dich denn die Verknuepfung zweier absoluter Pfade?
Gremlin
User
Beiträge: 166
Registriert: Freitag 28. Mai 2010, 23:49

Seit wann ist denn ein Pfad mit Backslash vorne dran absolut?
>>> path.replace(src, '')
u'\\und_eben_nochn_ordner'
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Code: Alles auswählen

In [3]: import ntpath

In [4]: ntpath.isabs(r'\foo')
Out[4]: True
Schon immer wuerde ich sagen.
Gremlin
User
Beiträge: 166
Registriert: Freitag 28. Mai 2010, 23:49

Ja, habs auch grad "gemerkt" als ich mir das ntpath Modul mal genauer angesehen hab.

Wow... mehr fällt mir grad nicht dazu ein. (Ach und hier fehlt eindeutig ein ganz bestimmter Smiley!)
ms4py
User
Beiträge: 1178
Registriert: Montag 19. Januar 2009, 09:37

Ein Pfad mit Backslash ist bei Windows ein absoluter Pfad vom aktuellen Laufwerk aus, wenn mich nicht alles täuscht (mag jetzt aber nicht die VM anwerfen zum Testen...)
„Lieber von den Richtigen kritisiert als von den Falschen gelobt werden.“
Gerhard Kocher

http://ms4py.org/
Antworten