一个类(class)可以通过 __repr__() 成员来控制repr()函数作用在其实例上时的行为。 str([object]) 返回一个可以用来表示对象的可打印的友好的字符串. 对字符串,返回本身。 没有参数,则返回空字符串 对类,可通过 __str__() 成员控制其行为。该成员不存在,则使用其 __repr__() 成员。 与repr 区别:...
def __repr__(self): return 'Name: %s' % self.name Name('vv') Out[8]: Name: vv print(Name('vv')) Name: vv 3、如果只写了__str__方法,可以申明__repr__ = __str__,也可以如__repr__一样有同样的效果 class Name: def __init__(self, name): self.name = name def __str__...
而通过repr()的输出结果我们不仅能获得now实例的内容,还能知道now是datetime.datetime对象的实例。 因此str()与repr()的不同在于: str()的输出追求可读性,输出格式要便于理解,适合用于输出内容到用户终端。 repr()的输出追求明确性,除了对象内容,还需要展示出对象的数据类型信息,适合开发和调试阶段使用。 另外如果想...
一个类(class)可以通过 __repr__() 成员来控制repr()函数作用在其实例上时的行为。 str([object]) 返回一个可以用来表示对象的可打印的友好的字符串. 对字符串,返回本身。 没有参数,则返回空字符串 对类,可通过 __str__() 成员控制其行为。该成员不存在,则使用其 __repr__() 成员。 与repr 区别:...
<class 'str'> >>> print(repr(number)) 123456789 >>> print(str(number)) 123456789 两个函数返回的类型是相同的,值也是相同的。 >>> print(str('123456789')) 123456789 >>> print(repr('123456789')) '123456789' 但当我们把一个字符串传给 str() 函数再打印到终端的时候,输出的字符不带引号。而...
repr(): 输出的字符串通常更详细,并且可以用来精确地重建对象。 str(): 输出的字符串通常更简洁和人类友好。 举个例子,来看一个自定义对象如何实现__repr__()和__str__()方法: 实例 classMyClass: def__repr__(self): return"MyClass(param1='value1', param2='value2')" ...
代码 classBook:def__init__(self,title,author):self.title=titleself.author=authordef__str__(...
class point: def __init__(self, x, y): self.x = x self.y = y def __repr__(self): return 'x: %s, y: %s' % (self.x, self.y) 我们运行它,同样会得到: x: 3, y: 4 这是为什么呢,难道__repr__和__str__是一样的吗?如果是一样的,Python的设计者干嘛要保留两个完全相同的...
"<class '__main__.Example'>" >>> repr(Example()) '<__main__.Example object at 0x1088eb438>' 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. **__str__**vs.**__repr__** 接下来我们看一看**__str__**和**__repr__**有哪些异同。根据Python官方文档定义: ...
class Represent(object): def __init__(self, x, y):#注:__init_是类class的构造函数 self.x, self.y = x, y def __repr__(self): return "Represent(x={},y=\"{}\")".format(self.x, self.y) def __str__(self): return "Representing x as {} and y as {}".format(self.x,...