Подтвердить что ты не робот

Python, добавить конечную косую черту в строку каталога, os независимо

Как добавить конечную косую черту (/ для * nix, \ для win32) в строку каталога, если хвостовая черта еще не существует? Спасибо!

4b9b3361

Ответ 1

os.path.join(path, '') добавит конечную косую черту, если она еще не существует.

Вы можете сделать os.path.join(path, '', '') или os.path.join(path_with_a_trailing_slash, ''), и вы все равно получите только одну косую черту.

Ответ 2

os.path.normpath(mypath) + os.sep

Ответ 3

Поскольку вы хотите подключить каталог и имя файла, используйте

os.path.join(directory, filename)

Если вы хотите избавиться от путей .\..\..\blah\, используйте

os.path.join(os.path.normpath(directory), filename)

Ответ 4

Вы можете сделать это вручную:

path = ...

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

Однако обычно гораздо проще использовать os.path.join.

Ответ 5

Вы можете использовать что-то вроде этого:

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.

Иначе вы могли бы найти что-то еще на этой странице