jupyter notebook调用其他文件
时间: 2024-12-28 19:19:39 浏览: 16
### 如何在 Jupyter Notebook 中导入和运行其他 Python 文件中的函数或类
#### 查看工作目录并放置目标文件
为了确保可以顺利访问外部Python文件,在Jupyter Notebook中先确认当前的工作路径。通过执行`import os; os.getcwd()`命令获取当前工作目录的位置[^2]。
```python
import os
os.getcwd()
```
将要被调用的`.py`文件或者模块所在的文件夹复制到上述得到的工作目录之下,这样就可以使这些资源对于Notebook来说是可寻址的。
#### 导入单个Python脚本作为模块
如果有一个单独的Python文件(假设名为`example.py`),那么只需要在这个文件所在位置正确的情况下,利用标准的`import example`语句就能加载其中定义的所有公共对象;也可以采用`from example import specific_function_or_class`的方式只引入特定的部分[^1]。
```python
# 整体导入整个module下的所有public成员
import example
# 或者仅导入所需的function/class
from example import myFunction, MyClass
```
#### 使用相对路径动态加载本地Python文件
当需要处理不在PYTHONPATH内的脚本时,可以通过设置临时修改sys.path来实现对指定路径的支持:
```python
import sys
sys.path.append('/path/to/directory/containing/the/file')
# 接着按照常规方式导入所需的内容
import target_file_without_extension
```
需要注意的是这种方法会在本次交互结束后失效,因此适合于一次性操作或是开发调试阶段[^4]。
#### 刷新已更改过的模块以便反映最新改动
有时候在同一项目内频繁编辑某些共享库可能会遇到缓存问题——即即使源码已经更新但在notebook里却看不到变化。此时应当考虑强制重新载入该模块:
```python
import importlib
importlib.reload(module_name)
```
这允许开发者无需重启kernel就让最新的代码生效。
阅读全文