|
发表于 2023-6-14 08:54:35
|
显示全部楼层
在Python中,创建类名的时候是否需要加括号取决于你的需求。
· class A: 这是创建一个没有继承任何类的基础类,它会自动继承Python的基类 object 。 这是最简单的类定义。
· class B(A): 这是创建一个新的类B,并且B类继承了A类。在这种情况下,我们必须在B类名后面的括号中指定它所继承的类。
· class A(): 这种定义方式和 class A: 基本上是一样的,都是创建一个没有继承任何类的基础类。尽管有括号,但括号内并没有指定任何类,所以这是一个空的基类定义。这种方式相对少用,因为看起来可能会让人误以为A类是在继承某个未指定的类。
· class A(object): 这是明确指出A类继承自基类 object 的定义方式。这在Python 2中是常见的做法,因为Python 2需要明确指出类继承自 object 才能成为新式类,拥有如继承、属性等新特性。但在Python 3中,所有的类默认都是新式类,因此这种写法在Python 3中并非必需,而且有点过时。如果你使用的是Python 3,那么 class A: 和 class A(object): 在功能上是完全一样的。
总的来说,在Python 3中创建类名的时候,除非你需要继承某个特定的类,否则通常不需要加括号。 |
|