Когда необходимо объединить несколько каталогов, как в исполняемом пути поиска, существует символ разделителя, зависящий от ОС. Для Windows это ';'
, для Linux это ':'
. Есть ли способ в Python, чтобы получить, какой символ разделить на?
В обсуждениях на этот вопрос Как мне узнать мой путь к Python, используя python? Предлагается os.sep
сделать это. Этот ответ неправильный, поскольку он является разделителем для компонентов каталога или имени файла и приравнивается к '\\'
или '/'
.
python
operating-system
environment-variables
Марк Рэнсом
источник
источник
os.sep
илиos.path.sep
это то, что вам нужно для путей файловой системы.os.pathsep
есть:
или;
покаos.path.sep
есть\\
или/
- иногда имена в Python кажутся мне шокирующе неудачными. Это.
делает слишком большую разницу.os.sep
иos.path.sep
, которые равны, а такжеos.pathsep
иos.path.pathsep
которые также равны. Зачем им это делать?Это os.pathsep
источник
Делая это немного более явным (для новичков Python, как я)
источник
ОК, так что есть:
os.pathsep
то есть;
и который является разделителем вPATH
переменной окружения;os.path.sep
это/
в Unix / Linux и\
в Windows, которая является разделителем между компонентами пути.Сходство является источником путаницы.
источник
os.path.sep
это ответ на другой вопрос.Это пример пути для вашего рабочего каталога / конкретной папки -
Выход для Linux-
/home/*******/Desktop/folder/PlayWithPy/src/testImages/imageHidden.png
Выход для Windows-
C:\\Users\\Administrator\\Desktop\\folder\\tests\\testImages\\imageHidden.png
источник