Python初级第9课——理解面向对象(只读课堂)

欢迎来到“只读课堂”!

生活中的面向对象

对象是什么:对象就是一个模型,在我们生活中,有许许多多的对象;比如,所有的楼房可以看作一类对象,不管是平房还是高层,都叫楼房;还有面,山西的刀削面,担担面,等等,都需要水煮,有的还可能给你加个鸡蛋,叫做鸡蛋面

对象是我们宏观意义上把一类具有相同属性的事物去总结称呼他,这个总结归纳出来的就是对象

对象是有公有属性,也有一些自己独有的;比如平房没有电梯,高层没有院子,但是都有门。或者我们的加蛋的面,面条是面这个对象必须有的,但是鸡蛋就不一定了。

编程中的面向对象

类:是翻门抽象出来的属性集合,是描述

实例:对象是我们用类这个属性集合具体实例生成的,也叫做实例

属性:属性可以是类中方法函数也可以是类中变量

实例属性:定义在方法中的属性(属性可以是类属性:类属性在整个实例化的对象中共有的,也可以是),只作用于当前实例的类

类属性定义在类中且在函数体外,类属性通常不作为实例属性使用

In [2]:

#接下来开始打代码!

In [3]:

class A:
    num = 1

In [4]:

a = A()

In [5]:

a

Out[5]:

<__main__.A at 0x1b6d47a16d8>

In [6]:

a.num

Out[6]:

1

In [7]:

#a就会有一个number属性

In [8]:

b = A()
c = A()
d = A()

In [9]:

b.num

Out[9]:

1

In [10]:

c.num

Out[10]:

1

In [11]:

#这就是我们用面向对象解决的一个问题

In [12]:

#它的好处是:

In [13]:

#可以节省内存
#还可以节省编程的成本

In [14]:

class A:
    def func():
        print('hello world')

In [15]:

a = A()

In [16]:

a.func()
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-16-9a9c9934c505> in <module>()
----> 1 a.func()

TypeError: func() takes 0 positional arguments but 1 was given

In [17]:

#这里为什么不能调用呢

In [18]:

#这是因为我们调用的类和实例中的属性是不同的。

本次只读课堂的python教程就到这了,欢迎下一次的收看!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值