【发布时间】:2025-12-27 14:55:12
【问题描述】:
当我在终端 shell 中输入以下内容时,我当前的工作目录不会改变。我没有收到任何错误代码。
import os
os.chdir('/Users/*myname*/Documents')
当我退出 shell 并在终端中输入“pwd”时,我不断收到/Users/*myname*。它不会将当前工作目录更改为Documents。有人可以帮我解决这个问题吗?
【问题讨论】:
-
改变Python进程的工作目录,不影响父进程和工作目录。调用
os.getcwd()获取当前Python进程的工作目录 -
如果你想改变shell的工作目录,你需要使用它的
cdbuiltin,而不是一个单独的Python进程。工作目录是每个进程的属性,而不是所有进程共享的全局状态。子进程继承其父进程的工作目录,否则两个进程的工作目录相互独立。