【python爬虫自学记录】【3】-面向对象编程概念,类,对象,构造函数,方法,继承

本文介绍了Python的面向对象编程,包括面向对象的基本概念、类的定义、对象的创建、构造函数的应用、方法的定义以及继承的原理。通过实例展示了如何创建类、调用构造函数以及实现方法。此外,还探讨了单继承和多继承,以及重写/重载的概念。
摘要由CSDN通过智能技术生成

面向对象编程

概念:把整个世界看成各种不同类,一个程序里面会有一些类

和面向过程的区别:
面向对象适合开发中大型项目,开发效率更高,更接近人的思维
面向过程适合中小型项目,效率相对低

:具有某种特征的事务的集合(群体,比如人是会说话,会思考的一个集合)

对象

:群体(类)里面的个体
类是抽象的,对象是具体的

通过python创造一个类,或者对象

class cl1:  #声明一个cl1的类
    pass #占位语句

a=cl1()  #实例化一个类,现在a成为了对象

构造函数

#self:在类中构造的方法必须加上self参数
#__init__(self,参数)
class cl2:
    def __init__(self):
        print("i am cl2 self")

b=cl2()

输出:
i am cl2 self

方法

类里面的函数 def 方法名(self,参数)

class cl3:
    def myfunc1(self,name):
        print("hello"+name)

c = cl3()
c.myfunc1("zz")

输出
hellozz

#给一个构造函数
class cl4:
    def __init__(self,name):
        self.myname=name
    def myfunc1(self):
        print("hello"+self.myname)

c = cl4("zz")
c.myfunc1()

输出
hellozz

继承

  • 父类
class father():
    def speak(self):
        print("i can speak")
  • 单继承:父类只有一个
class father():
    def speak(self):
        print("i can speak")

#儿子只继承了父亲
class son(father):
    pass

s=son()
s.speak()

输出:
i can speak

  • 多继承:父类有多个
class father():
    def speak(self):
        print("i can speak")
class mother():
    def write(self):
        print("i can write!")


#儿子只继承了父亲
class son(father):
    pass

#女儿继承了父母,并且还会听东西
class daughter(father,mother):
    def listen(self):
        print("i can listen!")

d=daughter()
d.speak()
d.write()
d.listen()

输出:
i can speak
i can write!
i can listen!

  • 重写/重载
class father():
    def speak(self):
        print("i can speak")
class mother():
    def write(self):
        print("i can write!")


#儿子只继承了父亲
class son(father):
    pass

#女儿继承了父母,并且还会听东西
class daughter(father,mother):
    def listen(self):
        print("i can listen!")

#小儿子重载,继承了父亲并且有了优化
class son2(father):
    def speak(self):
        print("i can speak 2 ")

s2=son2()
s2.speak()


输出
i can speak 2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值