我真的很喜欢使用这种结构来模板化我的项目:
├── notebooks
│ └── 00_my_analysis.ipynb
├── src
│ └── my_module
│ └──my_function.py
└── ... my_other_files
要从笔记本 from src.my_module import my_function
导入 (notebooks\00_my_analysis.ipynb
),我必须将以下代码段插入到第一个单元格中:
import os
if os.getcwd().endswith('notebooks'):
os.chdir('..')
print(f"change path to project parent folder {os.getcwd()}")
else:
print("already in the parent project folder")
在我通常编写大部分代码的 PyCharm 中,是否可以指定一个与文件所在路径不同的工作目录(参见“脚本路径”和“工作目录”参数到 { {3}})。
是否有任何我遗漏的配置选项可以让我获得相同的结果并避免每次在第一个单元格中包含上面的代码?
我尝试了几个与更改笔记本工作目录相关的建议(例如在 docs 或其他几个中),但他们正在更改笔记本(以及 jupyter 实验室中查看的文件浏览器)默认目录,而不是 python工作目录。
其他相关问题(例如 this)使用我已经在使用的相同解决方法解决此问题,同时我对减少重复/手动解决方案感兴趣。