Ответ 1
subprocess.Popen
принимает аргумент cwd
для установки текущего рабочего каталога; вы также захотите избежать обратных косых черт ('d:\\test\\local'
) или использовать r'd:\test\local'
, чтобы обратная косая черта не интерпретировалась как escape-последовательности с помощью Python. Как вы его написали, часть \t
будет переведена на tab.
Итак, ваша новая строка должна выглядеть так:
subprocess.Popen(r'c:\mytool\tool.exe', cwd=r'd:\test\local')
Чтобы использовать ваш путь Python script как cwd, import os
и определить cwd, используя это:
os.path.dirname(os.path.realpath(__file__))