Python, add trailing slash to directory string, os independently

后端 未结 4 904
长情又很酷
长情又很酷 2021-01-30 10:02

How can I add a trailing slash (/ for *nix, \\ for win32) to a directory string, if the tailing slash is not already there? Thanks!

相关标签:
4条回答
  • 2021-01-30 10:22

    You can do it manually by:

    path = ...
    
    import os
    if not path.endswith(os.path.sep):
        path += os.path.sep
    

    However, it is usually much cleaner to use os.path.join.

    0 讨论(0)
  • 2021-01-30 10:24

    Since you want to connect a directory and a filename, use

    os.path.join(directory, filename)
    

    If you want to get rid of .\..\..\blah\ paths, use

    os.path.join(os.path.normpath(directory), filename)
    
    0 讨论(0)
  • 2021-01-30 10:27

    os.path.join(path, '') will add the trailing slash if it's not already there.

    You can do os.path.join(path, '', '') or os.path.join(path_with_a_trailing_slash, '') and you will still only get one trailing slash.

    0 讨论(0)
  • 2021-01-30 10:42

    You could use something like this:

    os.path.normcase(path)
        Normalize the case of a pathname. On Unix and Mac OS X, this returns the path unchanged; on case-insensitive filesystems, it converts the path to lowercase. On Windows, it also converts forward slashes to backward slashes.
    

    Else you could look for something else on this page

    0 讨论(0)
提交回复
热议问题