哪个类首先在Python中执行?

时间:2012-09-24 13:33:45

标签: python

在类中包含所有代码是否是正确的做法?我有一个课程可以完成我所有的计算和诸如此类的东西。但是我在类之外拥有所有其余代码(主要用于调用类)。它看起来像这样。

class bigClass:
  executing here
  functions and whatnot
  blah blah

b=bigClass()
b.bigClassfunction()

我的问题是,最后两行是否应该属于他们自己的一类?或者我只是将它们留给没有绑定类的浮动。

3 个答案:

答案 0 :(得分:1)

这绝对没问题,没有必要把它们放在课堂上。如果您需要多次重复代码,则可以选择一个函数。

不应该用这类课程;类的作用,如维基百科,是

  

在面向对象的编程中,类是用于的结构   创建自己的实例 - 称为类实例,类   对象,实例对象或简单对象。一个类定义   构成成员,使其实例具有状态和   行为。数据字段成员(成员变量或实例   变量)使类实例能够维持状态。其他种类   成员,尤其是方法,启用类实例的行为。   类定义其实例的类型。

虽然你可以将这个代码嵌入到一个类中,但如果它只需要执行一次就不必将它放在一个类中。

编辑: 正如我现在所理解的,混淆是关于如何指示python首先运行哪些代码,就像在java中使用main类中的ProjectName方法一样。在python中,代码自上而下运行。每个声明都是随时计算的。这就是为什么你不能引用一个高于其定义的类的原因,例如。

obj = Klass()
class Klass: pass #Doesn't work!

答案 1 :(得分:0)

您的问题并不是特别明确,但您总是将所有与课程相关的代码放在课堂上。做其他事情没有任何设计意义。

答案 2 :(得分:0)

有些人将他们的“主要”代码放入一个块中,例如:

if __name__ == '__main__':
    foo()
    bar()

有关详细信息,请参阅this主题。

它不是很“Pythonic”。