zoukankan      html  css  js  c++  java
  • 面向对象-类与实例化对象

    对象:特征与技能的结合体,python中一切皆对象,在python3中统一了类与类型的概念

    :一系列特征与技能相似的对象

    注:站在不同角度,分类不一样

    在现实世界中:一定先有对象,再有类

    在程序中:一定需先有类,再有对象

    类的通途:

    1. 对属性的操作,增删改查
    2. 实例化产生一个一个的对象

    定义类并实例化对象:

    #定义类
    class LuffyStudent:
            school='luffycity'#数据属性
            def learn(self):#函数属性
                print('is learning')
            def eat(self):#函数属性
                print('is eating')
            def sleep(self):#函数属性
                print('is sleeping')
    #实例化对象
    stu1=LuffyStudent()
    stu2=LuffyStudent()
    stu3=LuffyStudent()
    print(stu1)
    print(stu2)
    print(stu3)

    类和对象的使用:

    类在定义的时候就会执行,就会存放到名称空间中去。访问方式通过'.'号

    查看类属性

    #定义类
    class LuffyStudent:
            school='luffycity'
            def learn(self):
                print('is learning')
            def eat(self):
                print('is eating')
            def sleep(self):
                print('is sleeping')
    print(LuffyStudent.__dict__)

    通过.查询类属性

    print(LuffyStudent.school)

    类增加属性

    #类增加属性
    LuffyStudent.county='China'
    print(LuffyStudent.county)

    类删除属性

    #删除属性
    del LuffyStudent.county
    print(LuffyStudent.county)

    类修改属性

    #修改属性
    print(LuffyStudent.school)
    LuffyStudent.school='LuffycitySchool'
    print(LuffyStudent.school)

    __init__()

    双下划线是类特的特殊方法

    __init__方法用来为对象定制对象自己的独有特征,在创建对象实例化的时候会执行

    #定义类
    class LuffyStudent:
            school='luffycity'#数据属性
            def __init__(self,name,sex,age):
                    self.Name=name
                    self.Sex=sex
                    self.Age=age
            def learn(self):#函数属性
                print('is learning')
            def eat(self):#函数属性
                print('is eating')
            def sleep(self):#函数属性
                print('is sleeping')
                
    #实例化对象
    stu1=LuffyStudent("王三丰","",18)

     __init__操作方式:stu1=LuffyStudent.__init__(stu1,"王三丰","女",18)

    查询对象属性

    #查询对象属性
    print(stu1.Name)
    print(stu1.Sex)
    print(stu1.Age)

    修改对象属性

    #修改对象属性
    stu1.Name="李三丰"
    print(stu1.Name)

     

    删除对象属性

    #删除对象属性
    del stu1.Name
    print(stu1.__dict__)

     

    增加对象属性

    #增加
    stu1.class_name='python开发'
    print(stu1.__dict__)

     

    面向对象可扩展性总结

  • 相关阅读:
    不可小视视图对效率的影响力
    Maximum Margin Planning
    PhysicsBased Boiling Simulation

    Learning Behavior Styles with Inverse Reinforcement Learning
    Simulating Biped Behaviors from Human Motion Data
    Nearoptimal Character Animation with Continuous Control
    Apprenticeship Learning via Inverse Reinforcement Learning
    回报函数学习的学徒学习综述
    Enabling Realtime Physics Simulation in Future Interactive Entertainment
  • 原文地址:https://www.cnblogs.com/yaya625202/p/8863527.html
Copyright © 2011-2022 走看看