Почему я не могу изменить текущий рабочий каталог? - PullRequest
0 голосов
/ 02 мая 2019

Я пытаюсь создать свою первую программу на Python, которая удаляет все пустые каталоги в d:\source.Похоже, я даже не могу войти в каталог с моими текущими навыками:

import os
os.getcwd()
os.chdir("D:\\SOURCE")
os.getcwd()

Все, что я получаю, это ...

D:\CODING\venv\Scripts\python.exe D:/CODING/tester.py

Process finished with exit code 0

Кажется, это не изменило рабочий каталог,как мне это проверить?Почему он вообще не отображает результаты / ошибки для os.chdir("D:\\SOURCE") или второй команды os.getcwd()?

Ответы [ 3 ]

2 голосов
/ 02 мая 2019

Скорее всего, ваша программа действительно изменит каталог.Но вы не можете видеть это:

  • Простое os.getcwd() не сделает ничего видимого: он извлекает текущий рабочий каталог и удаляет его.Вместо этого вы должны выполнить print(os.getcwd())
  • . Изменение текущего рабочего каталога влияет только на текущий процесс (т. Е. На программу Python), но не на его родительский процесс (командная строка).Таким образом, ваша командная строка сохраняет свой cwd и не наследует его от вызываемой программы.
1 голос
/ 02 мая 2019

os.chdir () не возвращает никакого значения .Это просто изменит каталог.Как предлагается в других ответах, вы можете распечатать / вывести текущий каталог, используя

os.chdir("D:\\SOURCE") 
print(os.getcwd())
1 голос
/ 02 мая 2019

Вам нужно распечатать результат.

import os
print(os.getcwd())
os.chdir("D:\\SOURCE")
print(os.getcwd())
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...