理解Python函数调用 - 各种输出

时间:2017-04-06 23:30:53

标签: python python-2.7 function

我有一个定义如下的函数,

import pprint

class Test(object):
        def __str__(self):
                return "at __str__"

        def __repr__(self):
                return "at __repr__"

x = Test()

print x
pprint.pprint(x)

输出:

at __str__
at __repr__

问题:

  1. 什么" def __str __(自我):"表示意味着。
  2. 为什么第一个打印正在打印第一个返回值 pprint正在返回第二个返回值。
  3. 我对python编程很陌生,如果你能提供更详细的信息,我们表示感谢。

1 个答案:

答案 0 :(得分:1)

如果您只想了解__str__

Difference between str and repr in Python就是您问题的完美答案。但我想您可能真的想知道什么是意思。它被称为运算符重载。您可以实现__abs__,然后您可以-x。阅读Operator Overloading question in stackoverflow