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

Python dir()函数问题:导入models模块后无法获取user类怎么办?

问题解决:import models后无法看到user类

不需要降低Python版本,这是Python包导入的标准规范问题,和版本无关,以下是具体解决方法:

核心原因

Python将包含__init__.py文件的文件夹视为可导入的包,默认情况下import models只会导入包本身(即执行models/__init__.py的内容),不会自动加载包内的子模块(比如MMM.py),因此MMM.py中定义的user类不会出现在models的命名空间里,dir(models)自然无法显示它。

解决方法

方法一:通过__init__.py暴露类

在models文件夹中创建__init__.py文件(如果不存在的话),在文件中添加以下代码:

from .MMM import user

完成后,执行import models再调用dir(models),就能看到user类,直接通过models.user即可访问该类。

方法二:直接导入子模块或类

如果不想修改__init__.py,可以在conduct.ipynb中调整导入方式:

  • 导入整个子模块:
    import models.MMM
    
    此时通过models.MMM.user访问类,dir(models.MMM)会显示user。
  • 直接导入类:
    from models.MMM import user
    
    这样可以直接使用user类,无需通过包层级访问。

内容的提问来源于stack exchange,提问作者정찬우

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 13:59:53