当前位置:嗨网首页>书籍在线阅读

05-当前工作目录

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

9.1.3 当前工作目录

每个运行在计算机上的程序,都有一个“当前工作目录”或cwd。所有没有从根文件夹开始的文件名或路径,都假定在当前工作目录下。

注意: 虽然文件夹是目录的新名称,但请注意,当前工作目录(或当前目录)是标准术语,没有“当前工作文件夹”这种说法。

利用 Path.cwd() 函数,可以取得当前工作路径的字符串,并可以利用 os.chdir() 改变它。在交互式环境中输入以下代码:

>>> from pathlib import Path
>>> import os
>>> Path.cwd()
WindowsPath('C:/Users/Al/AppData/Local/Programs/Python/Python37')'
>>> os.chdir('C:\\Windows\\System32')
>>> Path.cwd()
WindowsPath('C:/Windows/System32')

这里,当前工作目录设置为C:\Users\Al\AppData\Local\Programs\Python\Python37,因此文件名project.docx指向C:\Users\Al\AppData\Local\Programs\Python\Python37\ project.docx。如果我们将当前工作目录改为C:\Windows\System32,文件就被解释为C:\Windows\System32\project.docx。

如果要更改的当前工作目录不存在,Python就会显示一个错误:

>>> os.chdir('C:/ThisFolderDoesNotExist')
Traceback (most recent call last): 
  File "<stdin>", line 1, in <module>
FileNotFoundError: [WinError 2] The system cannot find the file specified:
'C:/ThisFolderDoesNotExist'

没有可以用于更改工作目录的 pathlib 函数,因为在程序运行时更改当前工作目录通常会导致微妙的错误。

os.getcwd() 函数是取得当前工作目录字符的较老方法。