如何在Google Colab中从utils.ipynb导入load_image函数?
在Google Colab中从utils.ipynb导入函数的解决办法
嘿,这个问题我之前帮不少开发者解决过——Colab里直接用from utils import load_image导入ipynb文件里的函数确实行不通,因为它默认不把.ipynb格式的文件当成可导入的Python模块。给你几个实用的解决办法:
方法1:把.ipynb转成.py文件(最规范稳妥)
这是最推荐的方式,把你的utils.ipynb转换成标准Python脚本文件,之后就能像普通模块一样导入了:
- 在Colab的任意单元格里运行这段命令,将ipynb导出为py文件:
!jupyter nbconvert --to script utils.ipynb
- 运行完后,你会在左侧文件栏里看到生成的
utils.py文件,接下来就可以正常导入函数了:
from utils import load_image
方法2:用import_ipynb模块直接导入ipynb
如果不想转换文件格式,可以用专门的模块实现ipynb之间的直接导入:
- 先安装这个模块(如果还没装的话):
!pip install import-ipynb
- 在models.ipynb里这样编写代码:
import import_ipynb # 先导入整个utils模块 import utils # 调用函数 img = utils.load_image("your_image_path.jpg") # 或者直接指定导入单个函数 from utils import load_image
额外注意事项
- 确保
utils.ipynb和models.ipynb在Colab的同一个文件目录下(左侧文件栏里能看到两个文件在同一层级),不然会出现找不到文件的错误。如果不在同一目录,你可以手动移动文件,或者用sys.path.append()把utils所在的目录添加到Python路径中。 - 如果utils.ipynb里有一些只用于交互式测试的单元格代码,转换或导入前最好把这些代码注释掉,避免导入时执行不必要的逻辑。
内容的提问来源于stack exchange,提问作者Siavash
相关产品推荐
相关产品推荐

