class Run(object):
def run(self):
print('run, save yourself')
Run().run()
打印出来
'跑,保存自己'
如何在不定义对象的情况下运行类及其函数?
我们必须为该类分配一个对象,然后像
一样运行它r = Run()
r.run()
python是否自动将对象分配给Class然后运行它?
答案 0 :(得分:3)
以下是您运行Run().run()
时发生的情况:
1- Run()
创建Run
对象
反过来,这个对象自己调用它的方法run()
这相当于:
r = Run()
r.run()
除非在你的情况下,你的对象Run()被创建,然后立即进行垃圾收集,因为在执行run()
方法之后没有任何指向它的东西。
答案 1 :(得分:1)
如果您希望课程无需拨打class Run(object):
def __init__(self):
self.run()
def run(self):
print('run, save yourself')
Run()
>>> run, save yourself
即可投放,您可以尝试这样的事情
class Run(object):
def __call__(self):
self.run()
def run(self):
print('run, save yourself')
r = Run()
r()
>>> run, save yourself
扩展,你也可以
{{1}}