首页 > 编程问答 >当前工作目录到底是什么?

当前工作目录到底是什么?

时间:2024-07-21 15:39:48浏览次数:6  
标签:python working-directory

我的书中指出:

计算机上运行的每个程序都有一个当前工作目录,或 cwd。任何不以根文件夹开头的文件名或路径都假定位于当前工作目录下

当我在 OSX 上时,我的根文件夹是 /。当我在 Python shell 中输入 os.getcwd() 时,我得到 /Users/apple/Documents 为什么我的 cwd 中会出现 Documents 文件夹?是说Python正在使用Documents文件夹吗?是否有任何以 / (根文件夹)开头的通往Python的路径? 另外,每个程序都有不同的cwd吗?


是对的,在 macOS 上,根文件夹是 '/' . 的书对当前工作目录 (cwd) 的描述是正确的,并且 Python 中的 os.getcwd() 函数返回当前工作目录的路径。

在的例子中, '/Users/apple/Documents' 是启动 Python shell 时所在的目录。Python 并没有真正“使用” Documents 文件夹,而只是继承了该目录作为其 cwd。

以下是关于问题的更多详细信息:

  1. 每个程序都有不同的 cwd 吗? 是的,每个程序在任何给定时间都可能拥有其自己的 cwd。当打开一个终端窗口时,它通常从的主目录启动。如果从那里启动 Python,那么 Python 将继承该目录作为其 cwd。但是,可以通过代码或命令行界面更改 Python 进程的 cwd。其他程序,如的文本编辑器或网络浏览器,也将拥有它们自己的 cwd,这些 cwd 可以与 Python 的 cwd 或彼此不同。

  2. 是否有任何路径从根文件夹 ( '/' ) 到 Python? 是的,肯定有。尽管的 cwd 是 '/Users/apple/Documents' ,但这仅仅是一个起点。可以从该位置访问文件系统中的任何文件或目录,包括位于 '/' 的根目录。例如,可以使用 '/' 打开一个位于根目录的文件:

with open('/etc/hosts', 'r') as f:
    contents = f.read()
  1. Python“使用”Documents 文件夹吗? Python 并没有以任何特殊的方式“使用” Documents 文件夹。它只是启动 Python shell 时恰好所在的目录,因此它继承了该目录作为其 cwd。如果在另一个目录中启动了 Python shell,那么的 cwd 将会不同。

希望这对有所帮助!如果有任何其他问题,请告诉我。

标签:python,working-directory
From: 45591428

相关文章