2024-06-16 09:06:10 发布
网友
只是一个简单的问题:何时应该使用术语“类”,何时应该在Python中使用术语“type”?
类是一个Python数据结构,可以通过调用它来用作该类实例的模板,例如foo = Foo()。
foo = Foo()
Atype是一个类,可以通过继承的方式用作附加类的模板,例如class Foo(Bar):
class Foo(Bar):
由于Python支持继承,所有类都可以用作附加类的模板,这意味着所有类实际上都是类型。
尤其是自从object中派生的“新样式类”出现以来,这种情况尤其如此,它将用户定义类的类型层次结构与内置类型统一起来。类总是类型,但现在它们是与内置类型相同的类型。
object
尽管Python类是类型,但我仍然发现这种区别是有用的,因此在我看来,这些术语并不完全是同义词。
附加定义:一个元类是一个实例是类的类。在Python中,它们必须从type类派生,就像新样式的对象从object.派生一样
type
object.
这或多或少是历史性的:they used to be different很久以前的事了,已经没有任何实际意义了。
编辑:我在提到具体实现时使用“class”,在谈到高级数据结构、应用程序结构等时使用“type”更为非正式。在中,我认为类型是一种更为一般的东西,我并不认为每个类都是一种不同的类型。
class
另外,当我使用元类(很少)时,我会提到类型。
我使用“type”来指代一般情况,但在谈到属性时,我会切换到“class”。
但你选择哪一个并不重要。
{} is of type dict. The iteritems() method of the dict class returns an iterator.
{}
dict
iteritems()
类是一个Python数据结构,可以通过调用它来用作该类实例的模板,例如
foo = Foo()
。Atype是一个类,可以通过继承的方式用作附加类的模板,例如
class Foo(Bar):
由于Python支持继承,所有类都可以用作附加类的模板,这意味着所有类实际上都是类型。
尤其是自从
object
中派生的“新样式类”出现以来,这种情况尤其如此,它将用户定义类的类型层次结构与内置类型统一起来。类总是类型,但现在它们是与内置类型相同的类型。尽管Python类是类型,但我仍然发现这种区别是有用的,因此在我看来,这些术语并不完全是同义词。
附加定义:一个元类是一个实例是类的类。在Python中,它们必须从
type
类派生,就像新样式的对象从object.
派生一样这或多或少是历史性的:they used to be different很久以前的事了,已经没有任何实际意义了。
编辑:我在提到具体实现时使用“
class
”,在谈到高级数据结构、应用程序结构等时使用“type
”更为非正式。在中,我认为类型是一种更为一般的东西,我并不认为每个类都是一种不同的类型。另外,当我使用元类(很少)时,我会提到类型。
我使用“type”来指代一般情况,但在谈到属性时,我会切换到“class”。
但你选择哪一个并不重要。
相关问题 更多 >
编程相关推荐