Paul Moore wrote:
2008/12/30 Phillip J. Eby <p...@telecommunity.com>:
You know, all this path separator and list complication isn't really
necessary, when you can just take the os.path.dirname() of the return from
commonprefix()....

Actually, consider: ...
os.path.commonprefix(["foo\\bar\\baz", "foo/bar/boink"])
'foo'

... I'm not sure how to deal with this, except by recommending that all
paths passed to os.path.commonprefix should at the very least be
normalised via os.path.normpath first - which starts to get clumsy
fast. So the "recommended" usage to get the common directory is

    paths = [...]
    common = os.path.dirname(os.path.commonprefix([
>                    os.path.normpath(p) for p in paths]))


More trouble with the "just take the dirname":

    paths = ['/a/b/c', '/a/b/d', '/a/b']
    os.path.dirname(os.path.commonprefix([
                        os.path.normpath(p) for p in paths]))

give '/a', not '/a/b'.

--Scott David Daniels
scott.dani...@acm.org

_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to