1介绍

__repr__repr(object)时调用,默认打印的是内存地址,既hex(id(object))

class A:pass
a = A()
repr(a)
'<__main__.A object at 0x7f3b94a113d0>'

2.重写__repr__

class A:def __repr__(self):return "重写了__repr__方法"
a = A()
repr(a)
'重写了__repr__方法'

3.__str__调用了__repr__

所以重写__repr__方法也会改变str的结果

class A:def __repr__(self):return "重写了__repr__方法"a = A()
str(a)
'重写了__repr__方法'

4作用

str主要是将对象转化为字符串,主要面向对象的使用者
repr也是将对象转化为字符串,主要面向对象的开发者

import datetime
today = datetime.datetime.now()
str(today)
'2020-08-05 11:51:34.177766'
repr(today)
'datetime.datetime(2020, 8, 5, 11, 51, 34, 177766)'

参考:
https://blog.csdn.net/sinat_41104353/article/details/79254149

python __repr__相关推荐

  1. python __repr__方法_Python __repr__()方法起什么作用呢?

    摘要: 下文讲述Python中 __repr__()方法的功能说明,如下所示: __repr__()方法的功能: 用于修改实例化对象的print效果, 如:print(实例化对象) 此时则返回 __r ...

  2. python __repr__方法_第8.13节 Python类中内置方法__repr__详解

    当我们在交互环境下输入对象时会直接显示对象的信息,交互环境下输入print(对象)或代码中print(对象)也会输出对象的信息,这些输出信息与两个内置方法:__str__方法和__repr__方法有关 ...

  3. python `__repr__`

    https://docs.python.org/3/reference/datamodel.html#object.repr object.__repr__(self) 调用repr()方法将自己转换 ...

  4. 理解python __repr__()方法

    通常情况下,python中想了解该对象的基本信息,直接使用print输出即可,但是对于类的实例化对象,想要知道他都有什么属性,它们的值各是多少等等.这时候直接使用print默认情况下,输出的信息是&q ...

  5. python __repr__用法_如何使用repr调试python程序

    一般调试程序的时候都比较倾向print,利用直接打印的方法作出判断,但是print只能打印出结果,对类型无法作出判断.例如: 复制代码 a = 5 b = '5' print(a) print(b) ...

  6. python __repr__用法_python中str和repr_关于Python中repr和str用法的区别?

    我们在用Python的时候,有时候会发现在交互模式下直接输入一个变量跟输入print(变量)打印出来的东西是不一样的. 还有时候,我们打印一个对象,得到的不是我们想要的它的值,而是一个内存地址. 这些 ...

  7. python __repr__用法_Python 中 str 和 repr 的区别

    Alex总结得很好,但是也太简洁了. 首先让我来重复下Alex的总结的要点: 缺省实现是没用的(很难说不是,但是没错) __repr__的目标是准确性 __str__的目标是可读性 容器的__str_ ...

  8. Python中自定义类如果重写了__repr__方法为什么会影响到str的输出?

    这是因为Python3中,str的输出是调用类的实例方法__str__来输出,如果__str__方法没有重写,则自动继承object类的__str__方法,而object类的__str__方法是调用_ ...

  9. Python基础教程和入门教程

    最近很多小伙伴都来问我,怎么学习python,应该从哪里开始学习呀,要学什么呀,没有辅助资料我也学不会呀,这次它来了,文章比较长耐心看完,看到最后聪明的人就能看懂我的神秘代码哟!! 一:学习目录 第1 ...

最新文章

  1. 邓海建:让网约车成为智慧城市的“老司机”
  2. [译]使用JavaScript来操纵数据视图DataView新建视图的默认值
  3. ajax(jquery)前后台传数组(Springmvc后台)
  4. 乐玩插件和大漠插件哪个好_用好这5款Chrome插件,大幅提升你的生产力
  5. 在ADF 12.2.1.3中使用基于JSON的REST Web服务
  6. 没一个能打的!端午档电影齐扑街:3天票房不及8亿
  7. nodejs学习文档(一) 认识node.js
  8. bi系统是做什么的?
  9. 多开分身苹果版_【教程】苹果手机居然可以微信分身?全套教程,进来领取
  10. 第三次打卡 特征工程
  11. 怎么删除一个圆或者图形的一部分
  12. Dirt4 Cross 游戏改装车辆(一)
  13. 关于getSource()简单说明
  14. 简单的led驱动 了解下
  15. LoadLibrary()动态调用dll失败,GetLastError()返回126
  16. ZYNQ Linux 添加I2C-RTC驱动
  17. qLabel 字体大小不受控制
  18. 2021年中国网络零售行业发展现状及行业发展趋势分析[图]
  19. 2020年合肥学院计算机研究生院调剂,2020考研53所院校调剂信息汇总(一)
  20. 京东商城关键词SEO优化总结

热门文章

  1. java 中传输文件的代码_java文件上传Demo(必看篇)
  2. php中常见的错误类型有,JavaScript编程中会出现的错误类型有哪些?错误类型介绍...
  3. this.$http.post传参
  4. Node.js下载安装及各种npm、cnpm、nvm、nrm配置(保姆式教程—提供全套安装包)—nrm的安装与配置(5)
  5. eclipse导入wsdl文件_IntelliJ IDEA的学习笔记(三、eclipse项目怎么导入idea中)
  6. ehcache springboot_阿里内部进阶学习SpringBoot+Vue全栈开发实战文档
  7. 热烈庆祝《Python可以这样学》在台湾发行繁体版
  8. Python函数中单独一个星号或斜线作为形参的含义
  9. springboot脚本启动bat_SpringBoot修改JVM参数(内置Tomcat命令行启动和IDEA工具配置修改)...
  10. 三种方法生成随机数之srand篇