类:具有相同属性和技能的一类事物,用面向对象编程时需要用class定义一个类名,类名的首字母要大写,例如:
class Person:
pass
对象:类的具体实例,通过对类传入实际参数,使得类实例化,例如:
p1 = Person("name", "age","sex")
静态变量:静态字段,在类内部定义的数据属性,类似与变量赋值,下面的country = "中国"就是静态变量
class Person:
country = "中国"
动态变量:方法,在类的内部定义的功能函数,也就是功能属性。下面def sleep():……就是动态变量
class Person:
country = "中国"
def sleep():
print("睡觉")
构造方法:在类的内部定义的实例化时的函数,下面的def init():……就是构造方法。
class Person:
country = "中国"
def __init__(self, name, age, sex):
self.name = name
self.age = age
self.sex = sex
def sleep(self):
print("睡觉")
通过类名进行的操作
1,操作静态字段
查询类中的全部内容,如下图,输出类中所有属性的字典。
print(Person.__dict__)
万能的点
增删改查
Person.money = 999999999999 # 增
del Person.money #删
Person.country = "美国" #改
print(Person.country) #查
2,操作方法
除了类方法,静态方法用类名去调用,其他方法都要用对象去调用
Person.sleep(p1)
通过对象角度操作
1.实例化
创建了对象空间,实例化空间
自动执行__init__方法,并将我的对象空间传给self
执行具体的__init__代码,给对象空间封装属性
p1 = Person("name", "age","sex")
2,操作静态字段
1.查询对象空间的全部内容
print(p1.__dict__)
2,万能的点
增删改查
p1.height = 1.75 # 增
del p1.height # 删
p1.name = "小明" # 改
print(p1.name) #查
3,操作类的方法,对象.方法名()
p1.sleep()