python 中的 __repr__() 方法
__repr__()
__repr__()
是 Python 类中的一个特殊方法,由 object 对象提供,由于所有类都是 object 类的子类,所以所有类都会继承该方法。
该方法主要实现 “自我描述” 功能——当直接打印类的实例化对象时,系统将会自动调用该方法,输出对象的自我描述信息,用来告诉外界对象具有的状态信息。
但是,object 类提供的 __repr__()
方法总是返回一个对象(类名 + obejct at + 内存地址),这个值并不能真正实现自我描述的功能!如下:
注:
输出实例化的 Person 类对象,返回的是一个在内存中的对象。而当输出 person 实例对象时,实际上输出的是
__repr__
方法的返回值,也就是说下边两个输出的效果一样 :
class Person():def __init__(self,name,age):self.name = nameself.age = ageperson = Person('zk', 20)
print(person)
print(person.__repr__())
输出:
<__main__.Person object at 0x7f5fe2bb4e50>
<__main__.Person object at 0x7f5fe2bb4e50>
因此,如果你想在自定义类中实现 “自我描述” 的功能,那么必须重写 repr 方法:
class Person():def __init__(self,name,age):self.name = nameself.age = agedef __repr__(self):return 'Person类,有name和age两个属性'person = Person('zk', 20)
print(person)
print(person.__repr__())
输出:
Person类,有name和age两个属性
Person类,有name和age两个属性
python 中的 __repr__() 方法相关推荐
- Python 中的特殊方法(定制类):__str__、__cmp__、__len__、数学运算、类型转换、@property运用、__slots__和__call__函数
Python中的特殊方法 Python的特殊方法定义在 class中,不需要直接进行显示调用,Python的某些操作符或者函数会自动调用对应的特殊方法.这些方法如:__str__().__len__( ...
- python中函数和方法的区别?Python编程判断当前获取的对象是函数还是方法
python中函数和方法的区别?Python编程判断当前获取的对象是函数还是方法 目录
- python使用方法-在Python中使用next()方法操作文件的教程
next()方法当一个文件被用作迭代器,典型例子是在一个循环中被使用,next()方法被反复调用.此方法返回下一个输入行,或引发StopIteration异常EOF时被命中. 与其它文件的方法,如Re ...
- python中range 10 0_如何在python中使用range方法
如何在python中使用range方法 发布时间:2021-01-05 16:55:23 来源:亿速云 阅读:94 作者:Leah 如何在python中使用range方法?很多新手对此不是很清楚,为了 ...
- Python中sys.argv方法的一些典型用法
本文整理汇总了Python中sys.argv方法的典型用法代码示例. 示例1: weather_icons # 需要导入模块: import sys [as 别名] # 或者: from sys im ...
- python中函数和方法的区别
本篇内容主要介绍从几个维度来介绍下python中函数和方法的区别: 首先,从分类的角度来分析. (1)函数的分类: 内置函数:python内嵌的一些函数. 匿名函数:一行代码实现一个函数功能. 递归函 ...
- python脚本怎么使用_在Python中使用next()方法操作文件的教程
next()方法当一个文件被用作迭代器,典型例子是在一个循环中被使用,next()方法被反复调用.此方法返回下一个输入行,或引发StopIteration异常EOF时被命中. 与其它文件的方法,如Re ...
- python方法测试怀孕_在Python中测试私有方法(例外)
在阅读了关于在Python中测试私有方法的内容之后,特别是在How do I unit test the methods in a method object?处引用了接受的答案,看来最好只测试公共接 ...
- python计时器timeit返回秒数_一日一技:Python中的timeit()方法
timeit()方法 python中的timeit()方法, 它用于获取代码的执行时间.该库将代码语句运行一百万次,并提供从集合中花费的最短时间.这是一种有用的方法,有助于检查代码的性能. 语法如下: ...
最新文章
- 8月第3周回顾:四巨头发三大新闻 一报告引多家争议
- 【安全漏洞】苹果取证的分析
- 谷歌浏览器怎么重发请求_chrome 浏览器的预提取资源机制导致的一个请求发送两次的问题以及ClientAbortException异常...
- 程序一直吐司提示获取缓存记录失败以及吐司显示set Alias success
- Android开发之通过反射获取全局的application
- Material Design入门(三)
- python数据可视化是什么_Python数据分析:可视化
- P2651 添加括号III(python3实现)
- editplus 格式java_用Editplus开发Java
- while(条件) 语句;语句 容易理解错的一点
- 《软件方法》第8章 分析 之 分析类图——知识篇Part1(20211029更新)
- 华为笔试题库及性格测试
- Android基础入门教程——4.4.2 ContentProvider再探——Ducument Provider
- VS2017创建项目模板和项模板(方便实用)
- 基于低代码平台的OA系统,更灵活高效!
- html 图片加载 占位,css实现图片未加载完成时占位显示
- python做excel数据条件_懂点EXCEL就行!教你利用Python做数据筛选(上)
- java滑雪,AcWing 901. 滑雪-java
- JAVA出现x可以在Point中访问private是什么意思 高手进
- MOOC浙大数据结构课后题记录——PTA数据结构题目集(全)
热门文章
- cas java_什么是CAS?JAVA中哪些地方用到来CAS?
- java 仿百度文库源码_java开发_模仿百度文库_OpenOffice2PDF_源码下载
- Symantec BESR备份操作系统
- lscpu与cat /proc/cpuinfo获取的CPU信息释义
- JSON.parse() 和 JSON.stringify()
- 如何查看自己加入过的微信群
- 时空大数据可视化专栏
- 电视购物中心小型呼叫中心系统二次开发
- C++,cout和std::cout的区别
- 如何改善自己的语言表达能力?