python之object类
object类
- 如python之继承及其实现方法这一节提到过的,object类是所有类的父类,因此所有类都有object类的属性和方法。
- 如python之封装及私有方法使用过的,内置函数dir()可以查看指定对象所有属性
- object有一个_str_()方法,用于返回一个对于“对象的描述”,对应于内置函数str()经常用于print()方法,帮我们查看对象的信息,所以我们经常会对_str_()进行重写
我么先来创建一个类
class Slowsnail(object): # 这里的object可写可不写,不写就默认为objectdef __init__(self, name, age):self.name = nameself.age = agesws_1 = Slowsnail('慢蜗牛', 20)
print(dir(sws_1))
print(sws_1)
我们可以看到这里创建了一个叫慢蜗牛的类,然后还创建了对象,并且用dir()函数查询了这个对象的属性,最后打印一下这个对象
['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'age', 'name']
<__main__.Slowsnail object at 0x000001CA6FAE6B50>
在第一行中我们可以找到_str_()方法,第二行则是打印的对象,在我们的python中的类和对象中就有解释为什么是这样的啊
那我们现在想直接打印出我们对象里面的属性怎么办呢,这个时候就要用到_str_()方法啦
class Slowsnail(object): # 这里的object可写可不写,不写就默认为objectdef __init__(self, name, age):self.name = nameself.age = agedef __str__(self):return '我的名字是{0},今年{1}岁了'.format(self.name, self.age)sws_1 = Slowsnail('慢蜗牛', 20)
print(dir(sws_1))
print(sws_1)
我们可以看到编译器的这个地方有一个返回的指示哈,这个就是我们的_str_()方法对object类进行了重写并且返回我们想要的东西呀
这里新出现了一个format()的方法,如果大家觉得陌生的话可以看看python之字符串format()方法
好啦,言归正传,我们来看看打印结果是什么
['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'age', 'name']
我的名字是慢蜗牛,今年20岁了
果然不出我们所料啊,使用这个方法就可以直接打印对象自己来输出我们想要的结果呀
python之object类相关推荐
- Python 的 object类、type元类
在C++,JAVA,C#等面向对象语言中, 类的实例 是 一个对象. 在Python中, 类的实例 是 一个对象,这个没有问题,object类是一切类的父类,这也没什么问题. 但是, type类有点 ...
- python中的object是什么意思_Python object类中的特殊方法代码讲解
python版本:3.8class object: """ The most base type """ # del obj.xxx或del ...
- python 类继承object_python-面向对象-17-继承/object类/mro方法
1.继承的基本概念 继承是面向对象程序设计的重要特征,也是实现"代码复用"的重要手段. 如果一个新类继承自一个设计好的类,就直接具备已有类的特征,这样就大大降低了工作难度,因为很多 ...
- python object 类
1. 在Python3之前,Python有两种类:旧式类和新式类.新式类必须从类object继承,否则就是旧式类. Python3以后统一新式类,所以也就不需要object类 2. 只有class C ...
- python里object是什么类型_Python中的object这个叫做基类的类,它的属性和行为都有哪些?...
声明:以下仅为个人学习Python过程中总结的比较自洽的理解,事实上Python面向对象模型可能没那么简单.经查阅,Python在以前的版本还有不继承自object的类,叫做经典类. 用dir(obj ...
- python如何创建一个类_python 3——自定义一个类、object类
1.如何创建一个类? __init__(self): self代表类的实例,而非类 类的方法:在类的内部,使用 def 关键字来定义一个方法,与一般函数定义不同,类方法必须包含参数 self, 且为第 ...
- python面向对象中方法重写class Person (object):#说明Person继承object类 def __init__(self,name,age): sel
(承接上次的知识学习) 首先给出方法重写的定义: 1.如果子类对继承自父类的某个属性或方法不满意,可以在子类中对其(方法体)进行重新编写: 2.子类重写后的方法可以通过super().xxx()调用父 ...
- Python - Object类
Object类 所有类的父类,默认所有的类都继承至Object类 规定了类的结构,加载方式,常用函数 以前的写法: class 类名(Object): pass 现在的写法: class 类名: pa ...
- 【python object类及其内置方法】
1. object类 object类所有类的父类,默认所有的类都继承至object类 当我们定义一个类,没有指定他的父类时,它默认就是继承了object类 例如 class Student:pass ...
最新文章
- AMD/NV大跌2周后仅两天收复失地 挖矿成背后推手
- 关于近期对Lucene.Net应用研究学习的总结
- Codeforces 1209D Cow and Snacks
- 机器学习笔记(十二)——马尔科夫模型
- iOS开发日记49-详解定位CLLocation
- Ext中extend
- -lavutil -lavcodec -lavdevice -lavfilter -lavformat链接失败,换用-lffmpeg
- [javase学习笔记]-8.8 构造代码块
- Python写的一个文件生成器脚本
- windows计划任务下 任务启动失败 错误码 2147942402
- 机器人开发--NDC方案
- 手机市场的竞争,用户价值才是硬道理
- U盘在windows电脑中毒,插入Macbook变成exe文件
- 如何查看某台计算机的IP地址 物理地址,显示ip:如何查看电脑ip地址和物理地址(地址)? _ 惠州SEO...
- Java系统环境变量配置
- GB/T 8170-2008 数值修约规则与极限数值的表示和判定
- 将12小时制改为24小时制
- 老男孩MysqlDBA专家班
- Go语言编程从入门到精通,流程控制之switch、for、defer
- 有缘相聚,因skycc 营销软件