python基础:面对对象的一些操作方法

编程入门 行业动态 更新时间:2024-10-15 06:18:57

python基础:面对对象的一些<a href=https://www.elefans.com/category/jswz/34/1765992.html style=操作方法"/>

python基础:面对对象的一些操作方法

一、在类的外部增加属性
方式: 对象名.属性名=值
注意:这种方式虽然简单,但是不推荐使用

class Person:def eat(self):print(self.name,'吃...')person=Person()
person.name='zs'       给对象person又添加了一个name属性
person.eat()           #      zs 吃...

二、init()方法
init()内置方法在创建对象的时候自动执行。
我们可以在 init()中做一些初始化操作。

练习1:创建Cat类,在 init()方法中初始化name属性的值

class Cat:def __init__(self,name):print('init方法在创建对象时执行')self.name=name  #此方法执行完后,name被初始化,如果引用name将找不到该变量,需要给对象添加一个name属性def eat(self):print('猫吃老鼠...')print(self.name)bule_cat=Cat('蓝猫')
bule_cat.eat()black_cat=Cat('黑猫')
black_cat.eat()

运行结果:

init方法在创建对象时执行
猫吃老鼠...
蓝猫
init方法在创建对象时执行
猫吃老鼠...
黑猫


三、str()方法
打印对象的名称时默认调用的是__str__()方法,此方法默认返回的是对象的内存地址。
我们可以重写 str() 方法打印对象保存的信息。

class Cat:def __init__(self,name):print('此方法创建时将会执行')self.name=namedef eat(self):print('虹猫蓝兔七侠传')print(self.name)
bule_cat=Cat('蓝猫淘气三千问')
bule_cat.eat()
print(bule_cat)        #打印的是bule_cat的id地址

运行结果:

此方法创建时将会执行
虹猫蓝兔七侠传
蓝猫淘气三千问
<__main__.Cat object at 0x000000000280D1D0>

加入__str__方法之后

class Cat:def __init__(self,name,age):print('此方法创建时将会执行')self.name=name       #创建self.name属性self.age=age            #创建self.age属性           def eat(self):print('虹猫蓝兔七侠传')print(self.name)def __str__(self):msg='{}是我童年的记忆,已经过去{}年了'.format(self.name,self.age)return msg      注意返回值,由bule_cat接收
bule_cat=Cat('蓝猫淘气三千问',20)
bule_cat.eat()
print(bule_cat)

运行结果:

此方法创建时将会执行
虹猫蓝兔七侠传
蓝猫淘气三千问
蓝猫淘气三千问是我曾经的记忆,已经过去20年了

更多推荐

python基础:面对对象的一些操作方法

本文发布于:2024-03-14 14:20:21,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1736657.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:操作方法   对象   基础   python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!