You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复导入自定义模块时的'IPython'无'utils'属性错误

解决AttributeError: module 'IPython' has no attribute 'utils'问题

这个错误的核心原因是IPython安装损坏或者版本与你的Python3.6环境不兼容,再加上你把依赖导入放在类的__init__方法里的操作放大了问题。下面是分步解决办法:

1. 修复IPython安装(最关键)

Python3.6已经停止官方支持,新版本的IPython不再兼容它。你需要安装适配Python3.6的IPython版本:

  • 先卸载现有IPython:
    pip uninstall -y ipython
    
  • 安装兼容版本(推荐7.16.3,这是支持Python3.6的最后几个稳定版本之一):
    pip install ipython==7.16.3
    

如果用conda环境,替换成conda命令:

conda uninstall ipython
conda install ipython=7.16.3

2. 调整导入位置优化代码

把依赖导入从类的__init__方法移到模块顶部,这样导入只执行一次,也更符合Python的编码规范,同时避免实例化时才触发导入可能引发的问题:

# 模块顶部导入所有依赖
from moviepy.editor import ImageSequenceClip
from moviepy.audio.AudioClip import AudioArrayClip
import numpy as np

class video_reader_writer:
    def __init__(self, video_file):
        self.video_file = video_file
        # 后续初始化逻辑
        ...

3. 额外排查点

  • 检查当前工作目录是否有同名的IPython.py文件,这会导致Python误导入本地文件而非官方库,删除或重命名该文件即可。
  • 确认你操作的虚拟环境(如果用了)是正确的,避免在全局环境和虚拟环境间混淆依赖版本。

内容的提问来源于stack exchange,提问作者Jaideep Sagar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 09:25:37