Python中的字符串对象表示

这个问题在这里已经有了答案:

  • __str__和__repr__之间的区别? 21个答案

  • __str__ (通常是读取dunder,用于double下)是一种实例方法,只要您运行str(<object>)并返回str(<object>)的字符串表示形式,就会调用它。

    str(foo)作为一个函数试图将foo转换为字符串。

    注意:
    还有一个与__str__()非常相似的__repr__()方法,其主要区别是__repr__应该返回一个明确的字符串, __str__用于可读的字符串。 对于两者之间差异的很大回应,我建议给这个答案一个阅读。


    __str__()是一个神奇的实例方法,可以实现这一点:当使用print()打印类实例变量时,它将为您提供一个可以通过更改__str__()方法中的返回字符串来修改的字符串。 有可能有更好的解释,但我可以告诉你代码:

    class Thing:
        def __init__(self):
            pass
        def __str__(self):
           return "What do you want?"  #always use return
    
    a = Thing()
    print(a)
    

    OUTPUT:

    What do you want?
    

    str()只是将一个变量转换为一个字符串类型变量。

    print(str(12.0))
    

    OUTPUT:

    '12.0'
    

    您可以使用type()函数确认它是一个字符串。

    print(type(str(12.)))
    

    我不知道确切的输出结果,但它会很可能有'str'大胆'str'

    链接地址: http://www.djcxy.com/p/28335.html

    上一篇: String Object Representation in Python

    下一篇: Making an object return its string when called