zoukankan      html  css  js  c++  java
  • Python知识5 类与对象 self和实例【多测师】

    一、类
    class Person:
        pass
    
        def __init__(self,name):
            self.name=name
    
        def get_name(self):
            return self.name
    
        def color(self,color):
            d={}
            d[self.name] = color
            return d
    
    if __name__ == '__main__':
        girl = Person("liili")
        print(girl.name)
        name=girl.get_name()
        print(name)
        her_color=girl.color("white")
        print(her_color)
        girl=Person("heheh")
    
    解释:
    1.self.name = name 的含义就是要建立实例的一个属性
    b = B() //上面的self就和这个小b一样 b.xx xx就是这个b这个对象的属性
    
    2.创建实例就是调用类Person() 首先执行初始化函数,初始化函数有俩个参数
    即self和name self是默认参数不需要传值 name需要给他传值
    所以Person("lili")就是为初始化函数中的name传值
    
    二、类属性
    1.类名.变量名 //类中的变量不依赖别的实例
    2.类属性可以删除和增加、修改
    3.一个类建立的同时 就有一些默认的属性 可以用dir(Person)来查看类的所有属性
    __dict__以双下划线开头的为特殊的属性
    
    三、创建实例
    1.类是实例的工厂
    2.创建实例就是调用类
    3.__init__ 构造方法 没有return语句这一点区别与普通的方法
    
    四、实例属性
    1.实例属性可以随意更改,类属性尽量不要进行修改
    2.修改实例属性后,类属性不会因为修改实例属性而发生改变 类属性和类绑定
    3.类属性的值改变会影响实例属性,这是因为实例就是通过调用类来建立的
    4.如果类中变量引用的是可变对象 类属性和实例数量都能直接修改这个对象 而影响
    另一方的值比如列表list=[1,2,3,4]
    5.创建实例的时候,实例变量作为第一个参数,被Python传给了self,所以在初始化函数中的self.name就是实例的属性
    6.self.name是类的实例的变量和属性
  • 相关阅读:
    思考问题的方法
    专注于工作以及工作相关的技术
    优化的思想
    Web开发基础之问 20130505
    外企一线开发经理的核心竞争力
    你说的话算不算数?
    不抱怨的世界
    欲立庙堂,先立栋梁
    ASP.NET 高级程序设计学习笔记 20130505
    function在forn表单中方法报错的解决方法
  • 原文地址:https://www.cnblogs.com/xiaoshubass/p/13113918.html
Copyright © 2011-2022 走看看