【Python中面向对象的学习】


面向对象:

类:基础标准

对象:根据标准产生的具体的实例

关系:对象是类的实例化结果,一个类会产生多个对象

使用面向对象:

先有类----通过类创建对象----对象调用类里规定的属性、方法

python里的魔术方法:由类提供,两个下划线开始,两个下划线结束


__init__方法:在创建一个对象时默认被调用

__init__方法里的self参数,在创建对象时不需要传递参数

在类的内部,可以使用self来使用属性和调用方法;在类的外部,需要使用对象名来使用属性和调用方法

__del__方法:

创建对象后,python解释器默认调用__init__()方法;

当删除对象时,python解释器会默认调用__del__方法

__str__方法和__repr__方法

两个方法都用于显示输出结果,__str__是面向用户的,显示结果更加友好,__repr__是面向程序员的

调用repr()函数时内部会调用对应的__repr__函数,调用str()函数时内部会调用对应的__str__函数

%r格式化对应的是调用repr()函数,%s格式化对应的是调用repr()函数

当调用print函数时,对应调用的是__str__函数;当直接在终端输出对象时,调用的是__repr__函数


比较运算符相关的魔法方法:

 __eq__:等于(=)         __ne__:不等于(!=)

__lt__:小于(<)            __gt__:大于(>)

__le__:小于等于(<=)   __ge__:大于等于(>=)


算术运算符相关的魔法方法:

__add__:+              __sub__:-

__mul__:*               __truediv__:/

 __mod__:%           __pow__:**


类型转换相关的魔法方法:

__int__:整数           __float__:浮点数

 __str__:浮点数       __bool__:布尔型

内置属性

使用内置函数dir可以查看一个对象支持的所有属性和方法

__slots__:Python中支持动态属性,可以直接通过点语法直接给一个对象添加属性,代码更加的灵活。

但是在某些情况下,我们可能需要对属性进行控制,此时,就剋使用__slots__实现
__doc__:表示类的描述信息

__module__: 表示当前操作的对象在那个模块

__class__: 表示当前操作的对象的类是什么

__dict__:以字典的形式,显示对象所有的属性和方法
__getitem_、\_setitem__和__delitem__方法:是将对象当做字典一样进行操作

 
实例属性

通过类创建的对象被称为实例对象,对象属性又称为实例属性,

记录对象各自的数据,不同对象的同名实例属性,记录的数据各自独立,互不干扰。

类属性

类属性就是类对象所拥有的属性,它被该类的所有实例对象所共有,类属性可以通过类对象或者实例对象访问

类属性和实例属性不能同名,如果有同名实例属性,实例对象会优先访问实例属性。
类属性只能通过类对象修改,不能通过实例对象修改
类属性也可以设置为私有
 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北海屿鹿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值