python--类、对象

Class 类

Class 类

一个类即是对一类拥有相同属性的对象的抽象、蓝图、原型。在类中定义了这些对象的都具备的属性(variables(data))、共同的方法

Object 对象

一个对象即是一个类的实例化后实例,一个类必须经过实例化后方可在程序中调用,一个类可以实例化多个对象,每个对象亦可以有不同的属性,就像人类是指所有人,每个人是指具体的对象,人与人之前有共性,亦有不同

  • 对象:实例化一个类后得到的对象
  • 即有类变量也有实例变量,没有类方法的状态下先用实例变量
  • 其实self,就是实例本身!你实例化时python会自动把这个实例本身通过self参数传进去。
  1. 类名+()产生一个实例(对象,对象空间.)
  2. 自动执行类中的__init__方法,将对象空间传给__init__的self参数,
  3. 给对象封装相应的属性.

操作类中的方法(除了类方法,静态方法 需要类名调用之外,剩下的方法都要对象调用)

r1 = Role('zou','police','AK47’)

此时self 相当于 r1 , Role(r1,'zou','police','AK47’)

r2 = Role('Jack','terrorist','B22’)

此时self 相当于 r2, Role(r2,'Jack','terrorist','B22’)

class Person:
    mind = '思想'  # 静态变量,静态字段
    animal = '高级动物'

    def __init__(self, name, age):  # 构造方法
        self.name = name
        self.age = age

    def work(self):  # 方法 ,动态变量
        print('都会工作...')

    def func(self):
        Person.money = '货币'
        self.hight = 175


print(Person.__dict__)

print(Person.mind)  #
Person.money = '货币'  #
Person.animal = '低等动物'  #
del Person.mind  #

结果:

{'__module__': '__main__', 'mind': '思想', 'animal': '高级动物', '__init__': <function Person.__init__ at 0x03634CD8>, 'work': <function Person.work at 0x03634C48>, 'func': <function Person.func at 0x03634C90>, '__dict__': <attribute '__dict__' of 'Person' objects>, '__weakref__': <attribute '__weakref__' of 'Person' objects>, '__doc__': None}
思想
class Dome:
    n = 123  # 类变量

    def __init__(self, name):  # 构造函数,相当于给类声  明变量
        self.name = name  # 实例变量,作用域就是实例本身

    def talk(self):  # 每一个函数里都要有一个self
        print('%s:say hello' % self.name)


f = Dome('zou')  # 实例化,初始化一个类。把一个类变成一个对象的过程叫做实例化
f.talk()  # Dome('zou').talk()

结果:

zou:say hello

 

posted @ 2020-11-21 22:43  邹邹很busy。  阅读(123)  评论(0编辑  收藏  举报