Я пытаюсь расширить относительный путь в абсолютный путь. Иногда относительный путь включает в себя .
, который необходимо будет расширить из текущего рабочего каталога. Мне было интересно, согласны ли какие-либо стандартные функции в Python с cwd
kwarg, например subprocess.popen
.Можете ли вы установить cwd для abspath?
Оптимальное решение
abs_path = os.path.abspath(rel_path, cwd=special_cwd)
Текущее решение
# Capture current working directory
previous_cwd = os.getcwd()
# Change to the new working directory
os.chdir(new_cwd)
# Convert relative path to absolute path
abs_path = os.path.abspath(rel_path)
# Change back to previous working directory
os.chdir(previous_cwd)
Текущее решение кажется неуклюжим, есть лучший способ сделать это?
Какую версию Python являются вы используете? –
Я использую Python 3.4 –
На основе документов 'abspath' чаще всего совпадает с' normpath (join (os.getcwd(), path)) '. Так не будет ли это 'normpath (join (new_cwd, path))'? –