创建类名需要加括号吗
如题,请教各位小伙伴,创建类名需要加括号吗?我看小甲鱼的视频,有的有加有的没有加,所以不太明白什么情况下不需要加 在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中创建类名的时候,除非你需要继承某个特定的类,否则通常不需要加括号。 有基类就加,没有可不加。 isdkz 发表于 2023-6-14 08:54
在Python中,创建类名的时候是否需要加括号取决于你的需求。
·class A:这是创建一个没有继承任何类 ...
好的 明白了,感谢! suchocolate 发表于 2023-6-14 09:00
有基类就加,没有可不加。
感谢 在 Python 中,定义一个类时,如果没有继承其他类,则可以省略括号。例如:
class MyClass:
pass
在这个例子中,类名为 `MyClass`,它没有继承其他类,因此可以省略括号。
如果有继承关系,则必须加上括号,并在括号中指定基类(父类)。例如:
class MySubClass(MyClass):
pass
在这个例子中,`MySubClass` 是从 `MyClass` 派生出来的子类,因此在定义 `MySubClass` 时必须加上括号,并在括号中指定 `MyClass` 作为基类。
总之,是否加括号取决于你是否需要使用父类的属性或方法,如果是从父类继承而来的,则需要加括号,并在其中指定父类。如果不需要使用父类的属性或方法,或者不继承任何类,则可以省略括号。
给我设置最佳答案呗{:10_254:} 无继承就不加
页:
[1]