更改为带有白色 space 的目录...在 .ipynb 中有效但在 .py 中无效?

Change to a directory with white space...works in .ipynb but not .py?

尝试将我的 Jupyter Notebooks 转换为 python 脚本,以便我可以每天自动化它们。在 Mac.

这在笔记本中没有问题:

cd '/Volumes/GoogleDrive/My Drive/dailyScripts'

但是当我尝试 运行 它作为 .py 文件时,出现了各种问题。

cd '/Volumes/GoogleDrive/My Drive/dailyScripts'
   ^
SyntaxError: invalid syntax
cd /Volumes/GoogleDrive/My Drive/dailyScripts
                          ^
SyntaxError: invalid syntax
cd /Volumes/GoogleDrive/My\ Drive/dailyScripts
                                              ^
SyntaxError: unexpected character after line continuation character

我也试过双引号。不确定还有哪些其他选项。提前致谢!

这是因为 cd 是命令行界面的 shell 命令(例如 mac/linux 上的终端,或 windows 上的命令 prompt/Powershell) . IPython 笔记本是“智能”的,当它们看到你以 cd ... 开头的一行时,它会自动 运行 通过伪终端为你。

Python 本身不知道 cd 或其他 shell 程序,而是将其与操作系统的所有接口捆绑在 os 内部标准库中的模块。因此,要从 python 脚本内部更改目录,您需要使用 os 模块并使用 chdir 函数,如下所示:

import os

os.chdir("/Volumes/GoogleDrive/My Drive/dailyScripts")

进一步阅读 os.chdir