This is exactly what you should expect. On Windows, os.path
gives you Windows-style paths; on Mac OS X, it gives you POSIX-style paths.
If you're looking to guarantee POSIX paths everything, don't use os.path
at all, use posixpath
instead.
On the other hand, if you've got paths that may be in POSIX format even on Windows (since most parts of Windows handle POSIX-style paths, and many tools generate POSIX-style paths) and want to guarantee that you've got a native path, call os.path.normpath.