Python os.path.join inconsistency?

Ken Dibble kdibbleNOSPAM@alltel.net
Mon Aug 30 21:10:00 GMT 2004


I don't know anything about Python but I do know that

'c:/foo' and  'c:/foo/bar' are not windows paths.

c:\foo and c:\foo\bar are.

This probably doesn't help though.

Regards,
Ken

Andres Corrada-Emmanuel wrote:

>Hello,
>
>I just ran across an inconsistency on the os.path module for Cygwin
>Python, specifically os.path.join:
>
>  
>
>>>>import os.path
>>>>os.path.join( 'c:/foo', 'c:/foo/bar' )
>>>>        
>>>>
>'c:foo/c:/foo/bar'
>  
>
>>>>os.path.join( '/cygdrive/c/foo', '/cygdrive/c/foo/bar' )
>>>>        
>>>>
>'/cygdrive/c/foo/bar'
>
>The first incantation of os.path.join with Windows style paths violates
>the documentation statement that os.path.join neglects previous paths once
>it encounters an absolute path.
>
>Does it not seem inconsistent that if Cygwin Python understands how to
>execute:
>
>file( 'c:/foo/bar' ) as well as file( '/cygdrive/c/foo/bar' )
>
>it should also treat Windows style paths correctly with os.path.join? In
>other words, it seems that Python on Cygwin cannot default to using
>posixpath.py for os.path. It's got to be posixpath.py with some additional
>magic to get it to do os.path.join correctly.
>
>How does one go about submitting a patch for Cygwin Python?
>
>Andres Corrada-Emmanuel
>Senior Research Fellow
>Information Extraction and Synthesis Laboratory
>University of Massachusetts, Amherst
>
>  
>


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list