python面向对象

python面向对象

编程思维

1.面对过程编程(穷人思维)

遇到问题马上想到的是解决问题的步骤和方案。

工具:思路和基础语法

2.函数式思维(小资思维)

遇到问题马上想到的是是否已经存在一个函数具备解决问题的能力,如果有直接用,没有就造一个。

工具:函数+思路+基础语法

3.面向对象编程(富豪思维)

遇到问题马上想到有没有一个对象具备这个功能,如果有直接用,没有就创建这个对象,创建对象要看有没有类,没有类还要创建类。

工具:类+对象+函数+思路+基础语法

认识类和对象

1.概念

类:类是具有相同功能和相同属性的对象的集合,是一类事物的总称,是抽象的概念。

对象:对象就是类的实例,类的具体表现。

2.定义类(创建类)

创建类就是用代码清楚描述这个是有在哪些相同功能(函数)和哪些相同属性(保存数据的变量)的对象的集合。

语法:

class 类名

​ 类的说明文档

​ 类的内容(方法和属性)

说明:

class - 关键字;固定写法;

类名 - 程序员自己命名;

​ 要求:是标识符,不能关键字、函数名、模块名、类名;

​ 规范:见名知意;驼峰式命名,并且首字母大写,不能使用系统已经使用的名字;

: - 固定写法;

类的说明文档 - 本质就是多行注释;

类的内容 - 由方法和属性组成;方法就是定义在类中的函数,属性就是定义在类中的变量;方法分为对象方法、类方法和静态方法三种,属性分为类属性和对象属性两种。

3.创建对象

对象又叫实例。

语法:

类名()

方法 - 定义在类中的函数

1.对象方法

1)怎么定义:将函数直接定义在类中。

2)怎么调用:通过‘对象.’的方式调用。

3)特点:自带参数self,在通过对象调用对象方法的时候,参数self不需要传参,系统会自动将当前对象传给self,self是谁调用就指向谁。

2.类方法

1)怎么定义:在定义函数前加装饰器:@classmethod。

2)怎么调用:通过‘类.’的方法调用。

3)特点:自动参数cls,在调用的时候cls不用传参,系统会自动将当前类传给cls。

3)静态方法

1)怎么定义:在调用函数前面加装饰器:@staticmethod。

2)怎么调用:通过‘类.’的方法调用。

3)特点:没有特点

class Percon:
    def func1(self):
        print('对象方法', self)

    @classmethod
    def func2(cls):
        print('类方法')

    @staticmethod
    def func3():
        print('静态方法')

常见的两个魔法方法

1.__init__

在通过类创建对象的时候会被自动调用;

创建对象的时候需不需要参数需要多少看这个__init__方法出来self以外有没有额外的参数,有多少。

2.__repr__

打印类的对象的时候会自动调用类中__repr__方法,并且获取这个方法的返回值为打印结果,返回值必须是字符

class Dog:
    def __init__(self):
        print('__init__')
    def __repr__(self):
        return 'abc'
dog = Dog()
print('dog对象:', dog)
# __init__
# dog对象: 123
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值