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是类的实例的变量和属性
  • 相关阅读:
    大一上的总结和大一下学期的目标
    [转]使用c# 模拟网站登录
    RegisterStartupScript和RegisterClientScriptBlock的区别
    关于PHP header函数跳转的问题
    asp.net 动态二维数组
    生成xml
    我们应该明确几个问题
    asp+ajax asp中ajax的中文乱码
    asp.net操作XML
    PHP Header用于页面跳转要注意的几个问题总结
  • 原文地址:https://www.cnblogs.com/xiaoshubass/p/13113918.html
Copyright © 2011-2022 走看看