python - python AttributeError 在我正在导入的模块中找不到类
问题描述
我有一个包,其中包含一个名为 rigfuncs3.py 的模块
SDNpackage/
__init__.py
rigfuncs3.py
代码:
class rig():
def __init__(self, rigNumber, leftNozPlate, rightNozPlate, bottomNozPlate, row1_centre_focus):
self.rigNumber = rigNumber
self.leftNozPlate = leftNozPlate
self.rightNozPlate = rightNozPlate
self.bottomNozPlate = bottomNozPlate
self.row1_centre_focus = row1_centre_focus
def getRigName(self):
return self.rigNumber
名为 play_04.py 的脚本从包中导入模块 rigfuncs。代码:
from SDNpack2 import rigfuncs3
instantiation = rigfuncs3.rig(1,1000.0, 2000.0, 3000.0, 4000.0)
print(dir(instantiation))
rig_num = instantiation.getRigName()
运行 play_04 时出现错误:
AttributeError:“rig”对象没有属性“getRigName”
我不知道为什么,有什么想法吗?
解决方案
我仍然无法复制您遇到的问题。
我试图复制您声明的文件夹结构,如下所示:
C:.
│ play_04.py
│
└───SDNpack2
rigfuncs3.py
__init__.py <--- empty file
rigfuncs3.py:
class rig():
def __init__(self, rigNumber, leftNozPlate, rightNozPlate, bottomNozPlate, row1_centre_focus):
self.rigNumber = rigNumber
self.leftNozPlate = leftNozPlate
self.rightNozPlate = rightNozPlate
self.bottomNozPlate = bottomNozPlate
self.row1_centre_focus = row1_centre_focus
def getRigName(self):
return self.rigNumber
play_04.py:
from SDNpack2 import rigfuncs3
instantiation = rigfuncs3.rig(1, 1000.0, 2000.0, 3000.0, 4000.0)
print(instantiation)
print(instantiation.__dict__)
rig_num = instantiation.getRigName()
print(rig_num)
我将您的调用更改dir(instantiation)
为instantiation.__dict__
仅显示对象的属性,而不是所有内置变量。
输出:
<SDNpack2.rigfuncs3.rig object at 0x02B1E628>
{'rigNumber': 1, 'leftNozPlate': 1000.0, 'rightNozPlate': 2000.0, 'bottomNozPlate': 3000.0, 'row1_centre_focus': 4000.0}
1
我可以复制问题本身的唯一方法是,如果我更改缩进,getRigName
或者将其全部从类中删除。
您的代码按照您编写的方式工作,我在这里没有看到任何实际问题。
推荐阅读
- rust - Rust 打印选项自定义结构
- r - 设置为零行值情人而不是 rowmean
- angular - Angular Reactive Forms - 带有文本搜索和切换的过滤列表
- python - 如何获得随机森林分类器中“预测”预测的类的“预测概率”?
- utf-8 - Findstr 无法识别第一行的字符串(编码 UTF-8 BOM)
- c# - 如何使用 C# 将字符串合并到 JSON
- eclipse - 如何在 VariablesView 插件 Eclipse 中访问双击/选择更改事件监听器?
- vb.net - 如何在 vb.net 中从体重秤获取数据到我的软件
- python - 如何从(.db)文件中读取python变量并为其赋值
- list - Flutter 合并图像列表