zoukankan      html  css  js  c++  java
  • 《python基础教程(第二版)》学习笔记 类和对象(第7章)

    《python基础教程(第二版)》学习笔记 类和对象(第7章)

    定义类
    class Person:
        def setName(self,name):
            self.name=name
        def getName(self):
            return self.name
     
    foo=Person()
    foo.setName('AAA')
    foo.getName()
    foo.name
    foo.name='BBB'

    私有属性,名字前面加上两个下划线。
    class Person:
        def __setName(self,name):
            self.name=name
        def __getName(self):
            return self.name

    class Person:
        members=0 #供全部实例访问
        def init(self):
            Person.members+=1 #供全部实例访问
        def setName(self,name):
            self.name=name
        def getName(self):
            return self.name

    __metaclass__=type
    class Filter:
       def init(self):
           self.blocked=[]
       def filter(self, sequence):
           return [x for x in sequence if x not in self.blocked]   
     
    class SPAMFilter(Filter): #子类扩展了超类
       def init(self):
           self.blocked=['SPAM'] #重写了init方法
           
    issubclass(SPAMFilter, Filter) ==> True
    SPAMFilter.__bases__  ==> (<class __main__.Filter at 0x0000000002E511C8>,)
    isinstance(foo, SPAMFilter)  ==> False
    hasattr(foo, 'name') ==> True
    查看对象内所有存储的值,用 __dict__属性。
    foo.__dict__ ==> {'name': 'AAA'}

  • 相关阅读:
    CCF计算机职业资格认证考试 201809-2 买菜
    【CodeVS3013】单词背诵
    【CodeVS3304】水果姐逛水果街Ⅰ
    【CodeVS4246】奶牛的身高
    【hdu1247】Hat’s Words
    【CodeVS4189】字典
    【CodeVS4244】平衡树练习
    【poj3264】Balanced Lineup
    【树状数组】
    【CodeVS1163】访问艺术馆
  • 原文地址:https://www.cnblogs.com/emanlee/p/4029280.html
Copyright © 2011-2022 走看看