为什么我不能更改当前工作目录?

时间:2019-05-02 13:31:24

标签: python python-3.x windows

我试图创建第一个删除d:\source中任何空目录的python程序。看来我什至无法使用当前的技能进入目录:

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 个答案:

答案 0 :(得分:2)

您的程序确实有可能更改目录。但是您看不到:

  • os.getcwd()不会做任何可见的事情:它将检索当前的工作目录并将其丢弃。相反,您应该print(os.getcwd())
  • 更改当前工作目录只会影响当前进程(即Python程序),而不会影响其父进程(命令提示符)。因此,您的命令提示符将保留其cwd,并且不会从被调用程序中继承该命令。

答案 1 :(得分:1)

您需要打印结果。

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

答案 2 :(得分:1)

os.chdir()不返回任何值。它将仅更改目录。根据其他答案的建议,您可以使用

打印/输出当前目录。
os.chdir("D:\\SOURCE") 
print(os.getcwd())