Рейтинг:
4
Jochen Arndt
Вы должны установить его в том же терминале, откуда запускается ваш скрипт Python (вручную или с помощью другого скрипта или пакетного файла), или установить его глобально (поиск "windows set permanent environment variable").
Тогда использовать
import os
path = os.environ["LOCATION_HOME"]
Смотреть также
16.1. ОС-разные интерфейсы операционной системы-документация Python 3.6.1rc1[
^].
Member 13046390
Я хочу сделать что-то вроде этого:
Я запускаю свой код python из холостого хода. Как мне назначить это в функции подпроцесса, чтобы открыть exe-файл из этого места.
Я сделал что-то вроде этого:
выход = подпроцесс.Попен((LOCATION_HOME\\binaries\\codeplay.exe
), stdout=подпроцесс.Трубы).стандартный вывод
Правильно ли это?
Jochen Arndt
Нет, потому что вы дали неверный путь.
Воспользуйся
path = os. environ ["LOCATION_HOME"]
путь + = " \\binaries\\codeplay.exe"
Попен(путь)
Member 13046390
У меня все еще есть некоторые проблемы.
Дело в том, что я предоставляю некоторые дополнительные вещи в Popen, как показано ниже.
выход = подпроцесс.Popen (('path-testroot C:\\....\Configuration-projectfile ProjectFilewithTags-environment'
), stdout=подпроцесс.Трубы).стандартный вывод
не знаете, как это здесь интегрировать? Не могли бы вы помочь? А пока большое спасибо.
Jochen Arndt
Это не имеет отношения к первоначальному вопросу.
Я предлагаю открыть новый вопрос, чтобы другие тоже могли помочь (а вопросы могут быть лучше отформатированы, чем комментарии). Но прежде чем сделать это, я бы посоветовал подумать об этом и прочитать документацию.
Для аргументов:
Просто добавьте их в переменную:
path + = " - testroot ..."
Member 13046390
я пробовал, но это все равно не работает. Он говорит, что система не может найти файл. Я сделал отпечаток пути, и он выглядит правильным, но есть что-то похожее ...\\двоичные файлы\ ... две обратные косые черты рядом с двоичными файлами, верно?
Тем временем я также опубликовал новый вопрос.
Jochen Arndt
Эти уродливые окна пересекаются с обратной косой чертой.
При печати пути должна быть напечатана только одна обратная косая черта, но при назначении постоянной строки их должно быть две (первая "экранирует" вторую).
Проверьте также переменную окружения HOME_LOCATION. Если это имеет завершающую обратную косую черту, используйте
путь += "binaries\\codeplay.exe"
Или лучше использовать
ОС.путь.присоединиться(путь, "binaries\\codeplay.exe")
Это решит эту проблему.
Member 13046390
Спасибо. Теперь это работает!! Спасибо, Сэр!