python中关于属性和方法

              有时候会经常把属性和方法弄混淆,更是在python中,像实例属性,实例方法,

类属性和类方法,以及静态属性和静态方法。

 

在python中,程序中存储的所有数据都是对象,而每一个对象都有一个标识,一个类型和一个值,

for example:

         a=42

就会创建一个值为42的整数对象,而a就是这个标识,

python中关于属性和方法

类似与is和==的区别(is就是比较对象的id,也就是表示标识是否相等,而==则是比较对象的值)

is也被叫做同一性运算符,这个运算符比较判断的是对象间的唯一身份标识,也就是id是否相同。通过对下面几个list间的比较,你就会明白is同一性运算符的工作原理:

python中关于属性和方法

(略微扯远了一点)

 

 

在python的类中,当类被实例化后就会有对象产生,即实例化对象,那么他的id和类型就不可改变了,如果对象的值是可以改变的,那就是可变对象,反之则为不可变对象。

属性就是与对象相关的值

方法就是调用时将在对象上执行某些操作的函数,可用点运算符(.)访问