it-swarm.com.ru

Как получить переменную среды PATH в Python?

Когда необходимо объединить несколько каталогов, как в исполняемом пути поиска, существует символ разделителя, зависящий от ОС. Для Windows это ';', для Linux это ':'. Есть ли способ в Python получить символ, на который нужно разделить?

В обсуждениях по этому вопросу Как я могу узнать мой python путь с использованием python? , предполагается, что os.sep сделает это. Этот ответ неверен, так как он является разделителем для компонентов каталога или имени файла и приравнивается к '\\' или '/'.

148
Mark Ransom
215
SilentGhost

Это os.pathsep

32
Dave Costa

Сделав это немного более явным (для python новичков, как я)

import os
print(os.pathsep)
12
Nerrve

Это пример пути для вашего рабочего каталога/конкретной папки -

import os
 my = os.path.sep+ "testImages" + os.path.sep + "imageHidden.png"
 print(my)

Выход для Linux-

/home/*******/Desktop/folder/PlayWithPy/src/testImages/imageHidden.png

Выход для Windows-

C:\\Users\\Administrator\\Desktop\\folder\\tests\\testImages\\imageHidden.png

0
Shivam Bharadwaj

ОК, так что есть:

  • os.pathsep это ';' и который является разделителем в переменной окружения% PATH%;
  • os.path.sep, который является '/' в Unix/Linux и '\' в Windows, который является разделителем между компонентами пути.

Сходство двух имен, по-видимому, является источником путаницы.

0
DVV