试图了解何时将对象参数放入类定义中,何时不放入。我在网上没有找到太多关于这个的信息。每次我尝试使用继承时,都会引发重大问题,我都会搞砸。有人能解释一下吗?感谢
class cats():
def __init__(cats_name):
self.cats_name = cats_name
class cats(object):
def __init__(cats_name):
self.cats_name = cats_name
当您的所有子类也有对象时,似乎出现了问题。Python对不止一个感到恼火。所以最后我拿出了";对象";来自其他类别,但这也有副作用。
例如,如果您以后想单独使用其中一个子类,那么现在它没有对象了。我错过了一些基本的东西。
我只知道";对象";是否类似于让您的类成为对象的python基类?这是对的吗?
您永远不需要在Python 3中显式继承object
。这是Python 2的遗留问题,
class cats:
...
定义了一个旧式类和
class cats(object):
...
定义了一个新型阶级。在Python3中,不再有旧式的类;只有新型的课程可供选择。
除非您正在维护Python2代码,否则不必担心这种区别。如果维护Python 2代码,则规则很简单:如果没有其他类型可继承,则始终从object
继承。没有理由定义新旧样式的类。
(不,我甚至没有考虑在2022年为2.2以上的Python版本编写代码的可能性。)