内置方法

Posted 随心朝阳

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了内置方法相关的知识,希望对你有一定的参考价值。

常用的内置方法就两个

1.__str_

改变对象的字符串显示

class Foo:
    def __init__(self,name):
        self.name = name
    def __repr__(self):
        return \'obj in str\'  #这里只能是return
    # def __str__(self):
    #     return \'%s obj in str\'%self.name
f = Foo(\'egon\')
print(f)  #优先执行__str__里面的内容
# 那么你是不是据地__repr__没用呢?
# print(\'%s\'%f)  #执行的是__str__里面的返回值
# print(\'%r\'%f)  #执行的是__repr__里面的返回值
print(\'==============\')
print(str(f))  #当执行str(f)时,会去找__str__这个方法,如果找不到的时候,__repr__这个方法就给替补了
print(repr(f))
#1.当打印一个对象的时候,如果实现了__str__方法,打印__str__中的返回值
# 2.当__str__没有被实现的时候,就会调用__repr__方法
# 3.但是当你用字符串格式化的时候,%s和%r会分别调用__str__和__repr__方法
# 4.不管是在字符串格式化的时候还是在打印对象的时候,
# __repr__方法都可以作为__str__方法的替补,但反之则不行
# 5.用于友好的表示对象。如果__str__和__repr__方法你只能实现一个:先实现__repr__

 #__str__和__repr__
__str__和__repr__

 2.__del__

析构方法,当对象在内存中被释放时,自动触发执行。

注:此方法一般无须定义,因为Python是一门高级语言,程序员在使用时无需关心内存的分配和释放,因为此工作都是交给Python解释器来执行,所以,析构函数的调用是由解释器在进行垃圾回收时自动触发执行的。

3.参考地址

http://www.cnblogs.com/linhaifeng/articles/6204014.html

http://www.cnblogs.com/haiyan123/p/7375772.html

http://www.cnblogs.com/linhaifeng/articles/7341318.html

http://www.cnblogs.com/linhaifeng/articles/7341177.html

以上是关于内置方法的主要内容,如果未能解决你的问题,请参考以下文章

vs 2010代码片段

vs 2010代码片段

c#代码片段快速构建代码

缺少 SQL SERVER 2014 代码片段

为啥 gl_Color 不是片段着色器的内置变量?

VS Code中自定义Emmet代码片段