repr是python内置函数吗,pythonstr和repr区别
在python方法的创建上,有些是为了让计算机快速识别,有些是为了我们用户。我相信是的,朋友们已经知道正式和非正式使用的不同方向。_repr_的用法经常和__str__一起讨论。在开始使用_repr_之前,我们需要弄清楚它在python中是正式的还是非正式的。下面就这个问题讨论一下。
1.__repr__函数使用
也许你也听说过__repr__函数,它也可以实现根据我们的需求定制输出的功能。例如,如果我们将上面的代码改为函数名,我们可以得到相同的结果。
类点:
def__init__(self,x,y):
self.x=x
self.y=y
def__repr__(self):
Return x :% s,y :% s% (self。x,自我。y)我们运行它,得到相同的结果:
X:3,y:4与我们上一个代码的结果相同。这里__repr__是正的。
式,__str__ 非正式。
2.__repr__函数正式和非正式分析
什么是正式?什么是非正式?光听文档上还是太抽象了,那我们就来看看几个 Python 内置对象的__repr__、__str__区别。 (PS:因为 Python 内置函数 repr() 和 str() 分别调用对象的__repr__和__str__,所以这边就用这两个函数来举例。)
importdatetimes='hello'
d=datetime.datetime.now()
print(str(s))
print(repr(s))
print(str(d))
print(repr(d))
输出结果:
hello'hello'
2018-11-2922:39:18.014587
datetime.datetime(2018,11,29,22,39,18,14587)
可以看出repr()更能显示出对象的类型、值等信息,对象描述清晰的。 而str()能够让我们最快速了解到对象的内容,可读性较高。
还有哦,在 Python 交互式命令行下直接输出对象默认使用的是__repr__。
通过本篇的学习,我们可以明确__repr__是正式的,因为主要是针对服务于程序的运行,而__str__是给人查阅和使用,大家需要注意区分。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。