Python中这个_repr_函数,对应repr(object)这个函数,返回一个可以用来表示对象的可打印字符串:

  1. 尝试生成这样一个字符串,将其传给 eval()可重新生成同样的对象 ;

  2. 否则,生成用尖括号包住的字符串,包含类型名和额外的信息(比如地址) ;

  3. 一个类(class)可以通过 __repr__() 成员来控制repr()函数作用在其实例上时的行为。

代码例子如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
>>>  class  D( object ):
...      def  __str__( self ):
...          return  "a __str__"
...      def  __repr__( self ):
...          return  "a __repr__"
...
>>> dr  =  D()
>>>  print  dr
a __str__
>>> dr
a __repr__
>>>  "%s"  %  dr
'a __str__'
>>>  "%r"  %  dr
'a __repr__'

Python中,有的操作符和函数是做同样的事情,原因是某些场合下函数会比操作符更适合使用,比如函数对象可作为参数传递。

__repr__作用相关推荐

  1. python类和对象基础详解

    类和对象 1 面向对象的思想 面向过程:面向处理理,更多的是从计算机⻆角度思考,注重计算每⼀一个步骤,程序更 像是⼀一本cpu操作⼿手册. 面向对象:以日常生活的角度思考问题的解决,更接近人的思维方式 ...

  2. python基础笔记二_面向对象

    面向对象 Object Oriented 概述 面向过程 1.分析出解决问题的步骤,然后逐步实现.例如:婚礼筹办-- 发请柬(选照片.措词.制作)-- 宴席(场地.找厨师.准备桌椅餐具.计划菜品.购买 ...

  3. Python 学习之路(中)

    一.函数的特殊用法 1.变量可以指向函数 代码演示: #abs------>absolute#abs()是一个系统的内置函数[built-in function] print(abs(-10)) ...

  4. Python 学习笔记 类的封装 类的继承 多态继承 类方法和静态方法 单例设计模式

    一.类的封装: 1.概念: 广义的封装:函数和类的定义本身,就是封装的体现 狭义的封装:一个类的某些属性,在使用的过程 中,不希望被外界直接访问,而是把这个属性给作为私有的[只有当前类持有],然后暴露 ...

  5. __repr__ 方法的作用

      Python 有一个内置的函数叫 repr,它能把一个对象用字符串的形式表达出来以便辨认,这就是"字符串表示形式".repr 就是通过 repr 这个特殊方法来得到一个对象的字 ...

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

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

  7. python的class的__str__()和__repr__()函数

    repr(object) 返回一个可以用来表示对象的可打印字符串 首先,尝试生成这样一个字符串,将其传给 eval()可重新生成同样的对象  否则,生成用尖括号包住的字符串,包含类型名和额外的信息(比 ...

  8. python中__str__与__repr__

    (1)背景 python中,对于类(自定义类)的实例对象的默认显示既没有太大用处,也不美观.比如: 1 class adder: 2 def __init__(self,value=0): 3 sel ...

  9. python中class __str__怎么用_python中下划线的作用

    学习python的时候,我们经常碰到一些变量的变量名带单下划线/双下划线前缀或者后缀,然后会觉得这样的命名风格很奇怪.除了变量命名风格外,也会遇到下划线的表达式,也会让人摸不着头脑.今天我们就来看下, ...

最新文章

  1. 移动端— position: fixed;固定定位解决方案
  2. 网站优化时需注意哪些事项可有效防止排名下降?
  3. 【连载】第一章:亚洲-台湾(1)
  4. 代码编写中会遇到的安全性问题
  5. linux命令 dstat,关于linux:每天学一个-Linux-命令103dstat
  6. Linux驱动概念扫盲篇
  7. abaqus生成adams柔性体_1:ABAQUS有限元分析-ABAQUS软件介绍
  8. xib加载的两种方式
  9. 理论应用实例水杯_PLC应用,3个PID控制实例讲解,想不会都难!
  10. oracle 表字段顺序_如何更改Oracle数据库表中字段顺序
  11. 求一个任意实数的算术平方根的算法设计_感恩!面试必刷100道算法题
  12. json html api文档,jsonEditor api介绍
  13. 思科交换机的配置模式基本配置命令
  14. 配置Skype for business 2015混合部署
  15. 使用WebSocket实现一个网页版的聊天室(摸鱼更隐蔽)
  16. ndo2db: Warning: Retrying message send. This can occur
  17. 不是所有的大作业都叫微信抢票大作业
  18. 软件生命周期管理系统ALM配置说明(二)
  19. Leetcode刷题笔记之445. 两数相加Ⅱ
  20. Scratch3.0----离线编辑器下载

热门文章

  1. 【VMware vSphere】详解VDP安装步骤
  2. oracle vdp 实现数据权限
  3. 定宽适配所有移动设备demo
  4. 照片jpg大小kb如何修改?图片在线压缩大小怎么处理?
  5. Dubbo服务注册源码分析
  6. intent和handler的理解和使用
  7. git ( |MERGING)
  8. php生成pdf文件,html转pdf文件的最佳方法(转载)
  9. Linux epoll 编程些许浅谈
  10. 零基础学习渲染--PBR(基于物理渲染)