python 如何得到类的所有实例

classa():passa1=a()a2=a()我如何得到classa的所有实例a1和a2?... class a():
pass
a1=a()
a2=a()
我如何得到class a 的所有实例a1和a2?
展开
 我来答
耳清明目
2018-10-30 · 超过10用户采纳过TA的回答
知道答主
回答量:54
采纳率:100%
帮助的人:19.4万
展开全部
实例指的是类进行实例化的对象,就只有一个啊,类中写的方法必须通过实例化才能调用。
class A:
def __init__(self):
pass

def fn1(self):
pass

@classmethod
def fn2(cls):
pass

@staticmethod
def fn3():
pass

def fn4():
pass
以上代码类中有实例方法,类方法,静态方法,和普通方法四种,实例化即是a=A(),a对象我们就称为实例。实例化方法必须实例对象调用a.fn1()。
类方法既可实例对象调用也可类调用,也可类调用a.fn2()或A.fn2()。
静态方法和普通方法在python3中都可直接通过类调用,但是不能通过实例调用否则会报错(因为方法没有入参),即只能A.fn3()和A.fn4()。
以上就是对类,实例和方法等概念的基本介绍。采纳,满分哦!
追问
但是我做了个类叫class 小飞机(),然后我实例化小飞机1=小飞机()、小飞机2=小飞机()
这时我想让所有的小飞机爆炸,于是我是不是要先得到所有小飞机?
或者说我知道有一个小飞机变量值速度比其他小飞机多100,怎么找到那个小飞机?
匿名用户
2018-11-01
展开全部
你每声明一个实例的时候,就将这个实例与tpye保存下来。之后你筛选就可以得到这个类的实例了。反正也占不了多少内存。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2018-11-15
展开全部
import gc
 
class Dog(object):
    def __init__(self, name):
        self.name = name
 
dahuang = Dog('1')
xiaobai = Dog('2')
 
for obj in gc.get_objects():
    if isinstance(obj, Dog):
        print obj.name
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友26333be
2018-11-19
知道答主
回答量:12
采纳率:0%
帮助的人:2.4万
展开全部
class A:
     pass
     
     
a1 = A()
a2 = A()
for var in globals().values():
    if type(var) is A:
        print(var)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
腾讯电脑管家
2018-11-04 · 百度知道官方认证企业
腾讯电脑管家
腾讯电脑管家是腾讯公司推出的免费安全管理软件,能有效预防和解决计算机上常见的安全风险,并帮助用户解决各种电脑“疑难杂症”、优化系统和网络环境,是中国综合能力最强、最稳定的安全软件。
向TA提问
展开全部
代码如下:

class Test(object):

def InstanceFun(self):

print("InstanceFun");

print(self);

@classmethod

def ClassFun(cls):

print("ClassFun");

print(cls);

@staticmethod

def StaticFun():

print("StaticFun");

t = Test();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式