repr函数python pythonrepr

python str和repr的区别str与repr区别:
1、python中str函数通常把对象转换成字符串,即生成对象的可读性好的字符串,一般在输出文本时使用,或者用于合成字符串 。str的输出对用户比较友好适合print输出 。
2、pyton中repr函数将一个对象转成类似源代码的字符串,只用于显示 。repr的输出对python友好,适合eval函数得到原来的对象 。
3、在类中实现__str__和__repr__方法,就可以得到不同的返回,示例代码:
class test(object):
def __repr__(self):
return "return test repr() string."
def __str__(self):
return "return test str() string."
print(str(test()))
return test str() string.
print(repr(test()))
return test repr() string.
python __repr__的作用1,尝试生成这样一个字符串,将其传给 eval可重新生成同样的对象。
2,否则,生成用尖括号包住的字符串,包含类型名和额外的信息 。
一,这个简单 str是显示给用户用的 repr是给机器用的 。
答:
1,class A(object)
2,print "this is A class"def __repr__(self):print "this is repr func"a = A() 比如print a 调用的是a的__str__方法
3,而如果你在python解释器里直接敲a后回车,调用的是a.__reprpython str和repr的区别 。
Python中repr()函数和str()的区别repr()和str,一个最简单的区别:repr是函数,str跟int一样是一种对象类型 。
repr(object)
返回对象的可打印形式字符串 。对于很多类型而言,本函数试图返回的字符串,会与将对象传给 eval() 所生成的结果相同;不然,结果就是一个尖括号包裹的字符串,包含了对象类型名称及其附加信息,附加信息通常包括对象的名称和内存地址 。通过定义 __repr__() 方法,类可以控制本函数将为实例返回的内容 。
classstr(object='')classstr(object=b'',encoding='utf-8',errors='strict')
返回object的 字符串 版本 。如果未提供object则返回空字符串 。在其他情况下 str() 的行为取决于encoding或errors是否有给出,具体见下 。
如果encoding或errors均未给出,str(object) 返回 object.__str__(),这是object的“非正式”或格式良好的字符串表示 。对于字符串对象,这是该字符串本身 。如果object没有 __str__() 方法,则 str() 将回退为返回 repr(object) 。
如果encoding或errors至少给出其中之一,则object应该是一个 bytes-like object (例如 bytes 或 bytearray) 。在此情况下 , 如果object是一个 bytes (或 bytearray) 对象,则 str(bytes, encoding, errors) 等价于 bytes.decode(encoding, errors) 。否则的话,会在调用 bytes.decode() 之前获取缓冲区对象下层的 bytes 对象 。请参阅 二进制序列类型 --- bytes, bytearray, memoryview 与 缓冲协议 了解有关缓冲区对象的信息 。
将一个 bytes 对象传入 str() 而不给出encoding或errors参数的操作属于第一种情况,将返回非正式的字符串表示(另请参阅 Python 的 -b 命令行选项) 。例如:
什么时候应该使用str() , 什么时候应该使用repr()?
在为最终用户创建输出时,几乎总是使用str 。repr()主要用于调试和 探索。例如,如果您怀疑字符串中有非打印字符,或者浮点数有一个小的舍入错误,则repr()将显示给您;str可能不会 。repr()在生成要粘贴到源代码中的文字时也很有用 。
【repr函数python pythonrepr】repr函数python的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于pythonrepr、repr函数python的信息别忘了在本站进行查找喔 。

    推荐阅读