属性和方法:
类的属性是对数据的封装,方法则是对类的行为的封装
一、属性
1)公有属性:在类中和类外调用的属性
2)内置属性:由系统在定义类的时候默认添加的,由前后两个下划线构成 比如:__dict__,__module__
3)私有属性:不能被雷以外的函数调用,定义时在属性名前加__
二、方法
1)方法的定义:self作为第一个参数
2)类方法也分为:公有方法和私有方法。
私有方法:不能被外部的类和方法调用,加双下划线__。
类方法:被classmethod()函数处理过的函数。
静态方法:相当与“全局函数”,其中无“self”语句
self 参数:指向对象本身
1)通过self调用类属性
class Human(object):
laugh='hahaha'
def show_laugh(self):
print self.laugh
def laugh_10th(self):
for i in range(10):
self.show_laugh()
xiaoming= Human()
xiaoming.laugh_10th()
可以看到 self调用了 Human类的属性laugh
2)通过self 增加对象属性,其中__init__ 类似构造函数
class Human(object):
laugh='hahaha'
def __init__(self,name):
self.name=name
# 注意:对象属性,非类属性
print('__init__ is called!')
def show_name(self):
print ('My name is :' + self.name)
def show_laugh(self):
print self.laugh
def laugh_10th(self):
for i in range(10):
self.show_laugh()
xiaoming= Human('xiaoming')
xiaoming.laugh_10th()