• python---类


    1、类animal = Animal(''),animal叫对象,类里的变量叫属性,类里定义的叫方法,类外面用def定义的叫函数。只是类里定义的方法第一个参数是self

      每个对象的属性,以及类的属性(Animal.voice)是单独存储的

    class Animal(object):
        voice = ''
        def __init__(self,voice):  #__init__为python内置函数
            Animal.voice = voice  #直接对类的属性进行修改
    
        def cat(self):
            pass
    
    print(Animal.voice)
    animal = Animal('') #Animal为一个类型,animal为用类型创建出来的对象
    print(Animal.voice)
    animal2 = Animal('')
    print(animal.voice)
    print(animal2.voice)
    print(Animal.voice)
    控制台输出:
          咩
          汪
          喵
          喵
          喵

    2、由1所知Animal.voice = voice为直接对类的属性进行修改,那么如何只对对象的属性进行修改,而不影响其它创建的对象呢

    class Animal(object):
        voice = ''
        def __init__(self,voice):  
            self.voice = voice  #self.voice代表实例化后的对象
    
        def cat(self):
            pass
    
    print(Animal.voice)
    animal = Animal('')
    print(Animal.voice)
    animal2 = Animal('')
    print(animal.voice)  #self.voice这种的,当发现self(对象)里面没有这种能力的时候,才会到Animal这个类型里去找;如果Animal这个类里没有,会到Animal的基类内找
    print(animal2.voice)
    print(Animal.voice)
    
    控制台输出:
          咩
          咩
          汪
          喵
          咩

    3、

    4、

  • 相关阅读:
    潜水员
    混合背包
    多重背包问题
    归并排序——最省时的排序
    HDU 1556 Color the ball
    2016 ACM/ICPC Asia Regional Dalian Online Football Games
    poj 2352 Stars
    poj 2299 Ultra-QuickSort
    关于原码反码补码以及位元算
    2016 湖南省省赛 Problem A: 2016
  • 原文地址:https://www.cnblogs.com/hzgq/p/11791022.html
Copyright © 2020-2023  润新知