02-02 06—10

______egon新书python全套来袭请看:https://egonlin.com/book.html

6、列举面向对象中带双下划线的特殊方法。

# 答案
#__setattr__: 添加/修改属性会触发它的执行
#__delattr__: 删除属性的时候会触发
#__getattr__: 只有在使用点调用属性且属性不存在的时候才会触发
# __getattribute__: 不管是否存在,我都会执行

7、双下划线和单下划线的区别?

# 答案
'''
"单下划线" 开始的成员变量叫做保护变量,意思是只有类对象和子类对象自己能访问到这些变量。

"双下划线" 开始的是私有成员,意思是只有类对象自己能访问,连子类对象也不能访问到这个数据。
'''

8、实例变量和类变量的区别?

# 答案
'''
类变量是所有对象共有,其中一个对象将它值改变,其他对象得到的就是改变后的结果;而实例变量则属对象私有,某一个对象将其值改变,不影响其他对象;
'''

9、静态方法和类方法区别?

# 答案
'''
Python的类就是个语法糖。一个函数写在类里面和写在类外面没有区别,唯一的区别就是参数,所谓实例方法就是第一个参数是self,所谓类方法就是第一个参数是class,而静态方法不需要额外的参数,所以必须区分。
'''

10、isinstance 和 type 的作用?

# 答案
'''
type和isinstance都可以判断变量是否属于某个内建类型
type只接收一个参数,不但可以判断变量是否属于某个类型,而且可以得到参数变量未知的所属的类型;而isinstance只能判断是否属于某个已知类型,不能直接得到变量未知的所属的类型
'''
posted @ 2019-10-22 20:13  小猿取经-林海峰老师  阅读(1367)  评论(0编辑  收藏  举报