Jupyter已运行类声明单元格仍报ModuleNotFoundError错误求助
问题成因
import语句用于导入独立的.py模块文件,你已经在当前Jupyter运行环境的全局命名空间里定义了Shirt类,不存在名为Shirt的独立模块,自然会触发ModuleNotFoundError报错。- 你后续直接给
shirt赋值属性的逻辑也有问题:你定义的Shirt是类模板,正常使用需要先实例化得到类实例,再给实例设置属性。
解决方法
如果你要直接使用已经运行过单元格定义的Shirt类,直接删除import语句,按如下代码操作即可:
# 实例化Shirt类,初始化属性 shirt = Shirt( shirt_color='red', shirt_size='S', shirt_style='long-sleeve', shirt_price=25 ) # 调用类方法测试 print(shirt.price) # 输出25 shirt.change_price(30) print(shirt.discount(0.1)) # 输出27
如果你确实需要使用import方式导入该类,可以将Shirt类的所有代码单独保存为和当前Jupyter notebook同目录的Shirt.py文件,之后用如下方式导入使用:
from Shirt import Shirt shirt = Shirt('red', 'S', 'long-sleeve', 25)
内容的提问来源于stack exchange,提问作者mchd
相关产品推荐
相关产品推荐

