python - 在类内创建同一个类的对象
问题描述
我想在一个类中有一个类的对象,因为我需要将它传递给一个方法,类似于下面的示例。我希望下面的示例打印出 1 或 fooObj.fooNum,但我不断得到NameError: name 'foo' is not defined
.
class bar:
def fooDef(self, fooObj):
print fooObj.fooNum
class foo:
fooNum = 1
b = bar()
f = foo()
b.fooDef(f)
解决方案
尽管不清楚您要问什么,但以下更改可以满足您的要求。
但是代码使用了foo()
非类的实例:
class bar:
def fooDef(self, fooObj):
print fooObj.fooNum
class foo:
def __init__(self):
self.fooNum = 1
b = bar()
f = self
b.fooDef(f)
f = foo()
印刷:
1
推荐阅读
- mongodb - SpringData MongoDB聚合投影排除
- javascript - 如何让打字稿知道函数类型
- java - 在android Java中获取列表文件文档,没有这样的文件或目录
- javascript - 从 JavaScript 更改 WTF 表单选定字段中的选定值
- android - 如何在适用于 Android 10/11 的 Packagemanager 中将 Android 应用列入白名单?
- elasticsearch - 是否可以为一个带有使用 debezium 和 kafka 的表的数据库创建一个 Elasticsearch 索引?
- uiimageview - 如何在另一个 UIImageView 上添加带有 PanGesture 的 UIImageView 然后将其保存为新的一个图像?
- html - Bootstrap 4折叠按钮不可见
- android - LiveData 没有观察具有共享视图模型的子视图页面片段
- flutter - 实现 setstat 和绑定变量