найти абсолютный путь из относительного пути в Python - PullRequest
3 голосов
/ 27 октября 2011

мой вопрос в значительной степени соответствует названию. мое исследование привело к тому, что я попробовал что-то вроде этого:

import os
pathname = os.path.abspath("some/relative/directory")
print pathname

эта проблема в том, что всякий раз, когда я делаю что-то подобное, он просто возвращает любой относительный каталог, который я ему дал, перед моим каталогом python. например:

C: \ python27 \ некоторые \ относительный \ каталог

, который даже не существует на моем компьютере. Я понимаю, что интерпретатор python ищет рабочий каталог по умолчанию, но я хотел бы, чтобы он искал на моем компьютере абсолютный путь, содержащий частичный каталог, который я указал.

Целью этого является создание exe-файла (используя py2exe), который может искать произвольный каталог на любом компьютере. Есть ли способ сделать это в стандартной библиотеке или через какой-то доступный модуль - или мне придется самому реализовывать алгоритм?

Ответы [ 2 ]

3 голосов
/ 27 октября 2011

abspath основано на getcwd.Скорее всего, ваш текущий рабочий каталог просто не тот, который вы ожидаете.

Вы можете изменить код, который запускает ваш скрипт, изменить каталоги вручную или просто использовать chdir в Python.

0 голосов
/ 27 октября 2011

Вы пробовали os.path.realpath("my/relative/dir")?На самом деле кажется, что каталог может не существовать, но если он это сделает, он разрешит символические ссылки и еще много чего.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...