作者sean72 (.)
看板Python
标题[问题] class
时间Sat May 25 08:48:52 2013
class Abc:
def __init__(self):
....
....
def run(self):
....
....
if __name__ == '__main__'
Abc().run()
看到上面一段代码,但是有很大的疑问
为什麽是
Abc().run()
而不是
xyz = Abc()
xyz.run() ?
Abc() <--把class当作method执行???
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 204.96.168.3
※ 编辑: sean72 来自: 204.96.168.3 (05/25 08:51)
1F:推 tkdmaf:以我之前写php的经验来看,这是一个实作物件的动作吧。 05/25 08:56
2F:→ tkdmaf:你没有将Abc()实作出来Abc他就不是个物件。 05/25 08:56
3F:→ tails32100:应该是static method 05/25 10:03
4F:→ tkdmaf:似乎不是,静态的话好像要宣告@staticmethod 05/25 11:28
5F:→ TaiwanXDman:Abc()不就生出一个物件了吗? 05/25 12:29
6F:→ TaiwanXDman:就像Java 你可以直接写(new Abc()).run()一样 05/25 12:29
7F:→ tjjh89017:Python应该都比较像static method吧,不然param干嘛要加 05/25 13:21
8F:→ tjjh89017:self把自己传进去咧? 05/25 13:21
9F:→ tjjh89017:只是这里是先实作class在call method吧 05/25 13:22