Gdy wiele katalogów musi być połączonych, tak jak w ścieżce wyszukiwania wykonywalnego, istnieje znak separatora zależny od os. Dla Windows jest to ';'
, dla Linuksa jest to ':'
. Czy jest jakiś sposób w Pythonie, aby dowiedzieć się, którą postać podzielić?Jak uzyskać separator zmiennej środowiskowej PATH w języku Python?
W dyskusjach na to pytanie How do I find out my python path using python?, zasugerowano, że zrobi to os.sep
. Odpowiedź jest błędna, ponieważ jest separatorem dla składników katalogu lub nazwy pliku i jest równa '\\'
lub '/'
.
Jeśli, tak jak ja, nie czytać ciało to pytanie i poszedł po tytule, pomyślisz, że jest to postać, która oddziela elementy ** ścieżki systemu plików ** (ukośnik w systemie Linux i MacOSX, ukośnik w systemie Windows). Nie jest, to znak, który oddziela elementy powłoki ** PATH **, która jest używana do lokalizowania poleceń wykonywalnych. 'os.sep' lub' os.path.sep' jest tym, czego potrzebujesz dla ścieżek systemu plików. – Perry
'os.pathsep' to': 'lub'; 'podczas gdy' os.path.sep' to '\\' lub '/' - czasami nazwy w Pythonie wydają mi się szokująco słabo wybrane. To '.' robi zbyt dużą różnicę. – ArtOfWarfare
Czy to jest najkrótsza odpowiedź na SO? Ponad 100 głosów na 10 znaków !! Okay, wiem, że to 66. –