python之object类

python之object类object 类 如 python 之继承及其实现方法这一节提到过的 object 类是所有类的父类 因此所有类都有 object 类的属性和方法 如 python 之封装及私有方法使用过的 内置函数 dir 可以查看指定对象所有属性 object 有一个 str 方法 用于返回一个对于 对象的描述 对应于内置函数 str 经常用于 print 方法 帮我们查看对象的信息 所以我们经常会对 str 进行重写 我么先来创建一个类 classSlowsna object

  • object类

    • python之继承及其实现方法这一节提到过的,object类是所有类的父类,因此所有类都有object类的属性和方法。
    • 如python之封装及私有方法使用过的,内置函数dir()可以查看指定对象所有属性
    • object有一个_str_()方法,用于返回一个对于“对象的描述”,对应于内置函数str()经常用于print()方法,帮我们查看对象的信息,所以我们经常会对_str_()进行重写

 我么先来创建一个类

class Slowsnail(object): # 这里的object可写可不写,不写就默认为object def __init__(self, name, age): self.name = name self.age = age sws_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可写可不写,不写就默认为object def __init__(self, name, age): self.name = name self.age = age def __str__(self): return '我的名字是{0},今年{1}岁了'.format(self.name, self.age) sws_1 = Slowsnail('慢蜗牛', 20) print(dir(sws_1)) print(sws_1)

python之object类

我们可以看到编译器的这个地方有一个返回的指示哈,这个就是我们的_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岁了

果然不出我们所料啊,使用这个方法就可以直接打印对象自己来输出我们想要的结果呀

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/224242.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午12:23
下一篇 2026年3月17日 下午12:23


相关推荐

  • SCTP编程

    SCTP编程1 简介 SCTP 是为了在 IP 网上传输信令而由 IETF 的信令传输工作组 SIGTRAN 提出的传输层协议 RFC2960 RFC4960 和 TCP UDP 相比 UDP 是无连接的传输协议 它能满足低延迟的要求 但是它却无法保证可靠传输 TCP 能保证数据可靠传输 但是它也不能完全符合信令传输

    2026年3月16日
    2
  • 常用接口文档模板(markdown版)

    常用接口文档模板(markdown版)目录 1 查询指定项目属性接口 1 查询指定项目属性接口功能获取制定项目的分类信息 URLhttp www api com index php 支持格式 JSONHTTP 请求方式 GET 请求参数参数必选类型说明 nameturestri

    2026年3月17日
    2
  • 主、外键约束_创建主键约束

    主、外键约束_创建主键约束主、外键约束点关注不迷路,欢迎再来!主键和外键是两种类型的约束;1.主键是能唯一的标识表中的每一行,就是说这一列非空且值不重复,可以指定为主键;作用是用来强制约束表中的每一行数据的唯一性;2.外键是b表中的某一列引用的值来源于a表中的主键列。也是约束b表中的外键列的值必须取致a表中的主键列值,不是其中的值就不能插入b表中。可以形成a表b表的联系,保持数据的约束和关联性。创建主表主键…

    2022年10月20日
    3
  • MacBook安装git教程,git学习这一篇就够了!

    MacBook安装git教程,git学习这一篇就够了!今天想和大家分享一下 git 想做这一期的原因是因为在实习期间 在和测试部门的主管交流需求时 她发现我对 git 一窍不通 然后叫我有空看看 git 去 这不 我就开始看看 git 我在下面放上 github 和 git 的网址方便大家访问 github github 官网 git git 官网 今天这一期我主要是从 git 是什么 如何安装 如何使用这三个方面来讲述 也算是我自己学习的一个过程 有以下安装环境需要先介绍一下 安装的机器是 MacBookpro20 非 m1 版本 我发现我的

    2026年3月19日
    2
  • 关于slam

    关于slam什么是SLAM?机器人在未知环境中,要实现智能化需要完成三个任务,第一个是定位(Localization),第二个是建图(Mapping),第三个则是随后的路径规划(Navigation)。  之前地平线的高翔博士用这样一句话概括SLAM的释义。不过实际生活中的SLAM都是和激光雷达或者单目/双目摄像头结合的形式出现在我们面前的,有时甚至跟更多的传感器融合,这让很多人觉得这个技术不是一两句话能

    2025年7月5日
    5
  • 语义分割和实例分割的区别_FPN运用在语义分割上

    语义分割和实例分割的区别_FPN运用在语义分割上目前的分割任务主要有两种:(1)像素级别的语义分割(2)实例分割这个有意思,什么叫实例分割呢?它与语义分割有什么区别与联系呢?顾名思义,像素级别的语义分割,对图像中的每个像素都划分出对应的类别,即实现像素级别的分类;而类的具体对象,即为实例,那么实例分割不但要进行像素级别的分类,还需在具体的类别基础上区别开不同的实例。比如说图像有多个人甲、乙、丙,那边他们的语义分割结果都是人,而实例

    2022年8月23日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号