四时宝库

程序员的知识宝库

Python中如何深入理解class(python@classmethod)

类也是对象

在理解元类之前,你需要先掌握Python中的类。Python中类的概念借鉴于Smalltalk,这显得有些奇特。在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段。

对这方面感兴趣,想要学习python或者想要了解python可以加群:623715703

Python中的类(Class)是一个抽象的概念,比函数还要抽象,这也就是Python的核心概念,面对对象的编程方法(OOP),其它如:Java、C++等都是面对对象的编程语言

Python中的类还远不止如此。类同样也是一种对象。是的,没错,就是对象。只要你使用关键字class,Python解释器在执行的时候就会创建一个对象。

面对对象(oop)中的对象,是一个非常重要的知识点,我们可以把它简单看做是数据以及由存取、操作这些数据的方法所组成的一个集合。我们在学习函数(function)之后,知道了如果重用代码,那为什么还要用类来取代函数呢?

类有这样一些的优点

1) 、类对象是多态的:也就是多种形态,这意味着我们可以对不同的类对象使用同样的操作方法,而不需要额外写代码。

2)、类的封装:封装之后,可以直接调用类的对象,来操作内部的一些类方法,不需要让使用者看到代码工作的细节。

3)、类的继承:类可以从其它类或者元类中继承它们的方法,直接使用。

对这方面感兴趣,想要学习python或者想要了解python可以加群:623715703

定义类(class)的语法

对这方面感兴趣,想要学习python或者想要了解python可以加群:623715703

看一第行,语法是class 后面紧接着,类的名字,最后别忘记“冒号”,这样来定义一个类。

玩蛇网提示:类的名字,首字母,有一个不可文的规定,最好是大写,这样需要在代码中识别区分每个类。

第二行开始是类的方法,大家看到了,和函数非常相似,但是与普通函数不同的是,它的内部有一个“self”,参数,它的作用是对于对象自身的引用。

在内存中创建一个对象,名字就是ObjectCreator。这个对象(类)自身拥有创建对象(类实例)的能力,而这就是为什么它是一个类的原因。但是,它的本质仍然是一个对象,于是乎你可以对它做如下的操作:

1) 你可以将它赋值给一个变量

2) 你可以拷贝它

3) 你可以为它增加属性

4) 你可以将它作为函数参数进行传递

对这方面感兴趣,想要学习python或者想要了解python可以加群:623715703

动态地创建类

因为类也是对象,你可以在运行时动态的创建它们,就像其他任何对象一样。首先,你可以在函数中创建类,使用class关键字即可。

Python中的一切都是对象,它们要么是类的实例,要么是元类的实例,除了type。type实际上是它自己的元类,在纯Python环境中这可不是你能够做到的,这是通过在实现层面耍一些小手段做到的。其次,元类是很复杂的。对于非常简单的类,你可能不希望通过使用元类来对类做修改。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接