如果我们可以直接访问和操作其他目录中的文件(例如,使用下面的Python代码),我们何时需要更改当前的工作目录?更改当前目录有什么好处?
import os
print(os.getcwd())
f=open(os.path.join(os.getcwd(),"test_folder")+"\\testfile","w")
f.close()
print(os.getcwd())
os.makedirs("test_folder_2")
print(os.getcwd())
输出:
c:\Users\me
c:\Users\me
c:\Users\me
答案 0 :(得分:4)
在示例中,您没有更改工作目录。你刚刚得到(打印)它。您无需更改工作目录。但就像您从资源管理器中导航文件一样,以保持文件的整理。有时它是为文件权限完成的。
答案 1 :(得分:0)
当前工作目录是相对路径的基目录。如果您不提供绝对路径,则可以在此处开始查找文件和文件夹。从2个不同的目录执行以下脚本并检查其差异。
# a.py
import os
print "\tcwd:", os.getcwd()
print "\tpth:", os.path.abspath("a")
现在从dos框中,您将获得以下输出:
C:\Users\user> python a.py
cwd: C:\Users\user
pth: C:\Users\user\a
C:\Users\user> cd ..
C:\Users> python user\a.py
cwd: C:\Users
pth: C:\Users\a
从不同的工作目录中,您可以使用相对路径定位不同的文件。使用相对路径通常是个好主意,因为否则脚本可能只适用于单个用户,或者程序的安装目录在所有计算机上必须相同,通常情况并非如此。您必须使用相对路径更改工作目录以正确定位文件和目录。