Mar*_*ark 2 python class-design class
class Car:
pass
class Car():
pass
Run Code Online (Sandbox Code Playgroud)
这两者有什么区别?和,
a = Car
a = Car()
Run Code Online (Sandbox Code Playgroud)
还有,上面这两个有什么区别?
最好的祝福
第一个语句,a = Car只是a为Car类创建一个别名.所以,在你这样做之后,你可以做到b = a()并且它会是一样的b = Car()
一旦你附加到()最后,它使python实际上初始化类(__call__或者只是初始化,但你不必担心这一点),并且a变成任何返回的Car(),在这种情况下,它是类实例.
至于class Car:和之间的区别class Car():.第二个是无效的语法(编辑:在2.5之前,我仍然会说这是一种糟糕的风格,因为如果你没有继承它就没有理由存在).你有括号的原因是你需要继承另一个类.
| 归档时间: |
|
| 查看次数: |
222 次 |
| 最近记录: |