Как изменить рабочий каталог кода VS на рабочий каталог файлов

Я пытался установить рабочий каталог по умолчанию в VS Code, когда рабочая область не открыта, на каталог, в котором находится исполняемый файл. Это нормальное поведение в других IDE, таких как Python IDlE. Мне это нужно, чтобы мои ученики могли запускать программу из любой папки, в которой она находится, и она могла открывать файлы, на которые ссылается их программа, используя относительную ссылку. У них всегда есть файл в том же каталоге, что и исполняемый файл (например, MP3, который они хотят открыть во время своей программы).

Я часами читал много документации, как в VS Code, так и в Stackoverflow, но безуспешно.

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

Я попытался изменить terminal.integrated.cwd в файле settings.json, чтобы по умолчанию использовался каталог, в котором выполняется файл (как в IDlE), без успех. Я не могу найти строку, которую мне нужно включить в terminal.integrated.cwd для этого. Я пробовал следующие строки ., ., .\,

Я также пробовал это:

"terminal.integrated.cwd": "${fileDirname}"

Но когда я запускаю следующий фрагмент кода, чтобы увидеть, есть ли изменения в рабочем каталоге, после сброса кода VS:

import os
cwd = os.getcwd()
print("Current working directory: {0}".format(cwd))

Он по-прежнему показывает мне рабочий каталог как c:\users\my_user_name, а не тот, где находится файл, выполняющий этот код.

Может кто-нибудь, пожалуйста, скажите мне, что я могу сделать дальше? Спасибо.


person ilopezdeveloper    schedule 01.06.2021    source источник


Ответы (2)


Я думаю, os.chdir(path) может быть решением в вашем случае.

https://docs.python.org/3/library/os.html#os.chdir

person hs2    schedule 01.06.2021
comment
Спасибо за ваш ответ! - person ilopezdeveloper; 01.06.2021

Закон Мерфи, через 5 минут после публикации вопроса (и после нескольких часов исследований) я натыкаюсь на этот опубликуйте решение, которое отлично работает. Настройки--› Python›Терминал›Выполнить в каталоге файлов

person ilopezdeveloper    schedule 01.06.2021