通常情况下 打印一个类或者类的对象 会显示 xx.xx object at 0xaaaaabbbbbbb 只会告诉你这个对象或者类 储存在某个内存中,这是因为你的类没有实现相关的打印功能

print (classA)# [<sort.detection.Detection object at 0x7fdcfd0734a8>, <sort.detection.Detection object at 0x7fdcfdf661d0>]
或者
#  <__main__.Foobar instance at 0x7ff2a18c>

类可以通过定义 __ repr__() 方法控制这里函数为它的实例返回的内容。

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
class Test:def __init__(self, a, b):self.a = aself.b = bdef __repr__(self):return"<Test a:%s b:%s>" % (self.a, self.b)def __str__(self):return"From str method of Test: a is %s, b is %s" % (self.a, self.b)

测试

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
>>> t = Test(123, 456)
>>> t
<Test a:123 b:456>
>>> print repr(t)
<Test a:123 b:456>
>>> print t
From str method of Test: a is 123, b is 456
>>> print str(t)
From str method of Test: a is 123, b is 456

str 方法没有定义,print t ( 或者 print str(t) ) 将使用 __repr__的结果

如果未定义 repr 方法,则默认使用默认值,这与这里相当。

Python :给类或者类的对象添加打印内容 def __repr__(self)相关推荐

  1. Python学习:给类或者类的对象添加打印内容 def __repr__(self)

    通常情况下 打印一个类或者类的对象 会显示 xx.xx object at 0xaaaaabbbbbbb 只会告诉你这个对象或者类 储存在某个内存中,这是因为你的类没有实现相关的打印功能 print ...

  2. python中类的约束和限制对象添加属性

    通过__slots__限制对象可添加的属性 class A:__slots__ = ['a', 'b']passa1 = A() a1.a = 10 print(a1.a) a1.c = 0 # 只能 ...

  3. python控制台输出到文件_Python print 立即打印内容到重定向的文件

    看到本文标题也许要奇怪了,Python 的 print 难道不是也上可以看到结果的吗?在 Python shell 下只要 >> print('Hello world!') Hello w ...

  4. python运行.py文件时无法向控制台打印内容

    在正确的目标文件下运行.py文件没反应 经过好一阵子的"网络冲浪",终于解决了这个问题,主要就是python的安装问题 1.确定系统路径 将python.exe文件所在路径添加到系 ...

  5. python中属性和类级变量_六、Python类变量和实例变量(类属性和实例属性)

    我们知道,无论是在类中定义的属性还是方法,在类的外部,都无法直接调用它们,因此,我们完全可以把类看做是一个独立的作用域(称为类命名空间),则类属性其实就是定义在类命名空间内的变量(类方法其实就是定义的 ...

  6. SIGIA_4P python学习 列表 字典 集合 面对对象编程 闭包 装饰器 函数式编程 作用域 异常处理

    SIGIA_4P python学习 列表 字典 集合 面对对象编程 闭包 装饰器 函数式编程 作用域 异常处理 本文连接 简介 SIGIA_4P 网址 a. 课程OKR Objectives and ...

  7. JS中的类,类的继承方法

    大牛请无视此篇! 首先我们定义一个类,方法很简单,就像我们定义函数一样,只不过我们为了与函数区分,名称首字母要大写,看代码: function Person (){} 这就是一个很简单的Poson类, ...

  8. 27、Python 面向对象(创建类、创建实例对象、访问属性、内置类属性、对象销毁、类的继承、方法重写、基础重载方法、运算符重载、类属性与方法、下划线双下划线)

    27Python面向对象(Python2) Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. ...

  9. python类中没有属性_如何在python语言中在类中删除属性和添加属性

    在python语言中的类,可以使用class定义类,调用__init__方法进行初始化:默认传入self,可以在后面在添加几个属性.可以使用setattr()添加属性,也可以使用delattr()删除 ...

最新文章

  1. 左侧固定,右侧自适应的布局方式(新增评论区大佬教的方法)
  2. puppeteer api_使用Node.js和puppeteer API从URL创建PDF文件
  3. flex if(a is b){},flex if(a as b){} 意思
  4. wincc怎么做数据库_wincc 数据库
  5. 计算机电脑五笔怎么打,卸五笔怎么打_电脑极品五笔输入法卸载方法介绍
  6. 机器人动力学建模之牛顿欧拉法推导
  7. react小书,怎么渲染列表(react)
  8. 高等数学在计算机的应用论文,计算机技术在高等数学教学中的应用
  9. c语言计算机结题报告怎么写,结题报告格式及如何写结题报告
  10. AUTOCAD——三种修剪方式
  11. 广东省计算机一级网络题分值,计算机一级考试的试题分值如何分配的?
  12. 通过阿里云API查询账户余额
  13. dedecms怎么改php版本_王者荣耀:管你版本怎么改,这几位峡谷常青树始终屹立不倒...
  14. 7-1 人民币与美元汇率兑换程序 (10分)
  15. 网络编程和数据库(一)
  16. Wiley-中国科学院文献情报中心开放科学联合研讨会第二讲:开放获取期刊选择及论文投稿...
  17. HBase2.x(十一)HBase 读流程
  18. matlab使用webcam获取摄像头图像
  19. Java使用JNA调用Golang编译生成的动态库(dll 和 so 文件)
  20. AssetMark背后,是华泰的野心?还是TAMP的崛起?| 亿欧解案例

热门文章

  1. ubuntu创建文件夹快捷方式命令
  2. Puppet dashboard安装
  3. 理解MySQL——复制(Replication)
  4. 【Bapi】客户主数据快捷修改
  5. 【PM模块】操作功能概览
  6. 估价范围还没有生产式的物料帐薄
  7. 解读SAP Hybris为何获国内B2B用户青睐?
  8. SAP 外币金额 汇率 转换
  9. SAP 将smartforms的报表转成PDF
  10. 2015年我国互联网行业概况及现状分析