zoukankan      html  css  js  c++  java
  • 《Python 第七章》更加抽象

     python主要的内建对象类型 (数字,字符串,列表,元组和字典)
     面向对象的语言python : 多态,封装,方法,特性,超类,继承!
    @学习摘录 701:对象的魔力
     * 多态 : 意味着可以对不同类的对象使用同样的操作!
     * 封装 : 对外部隐藏对象的工作细节。
     * 继承 : 以普通的类为基础建立专门的类对象。
    @学习摘录 702:多态无处不在!
    >>> 'abc'.count('a')
    1
    >>> ['a', 2, 'a', 3].count('a')
    2
    >>> 1+2
    3
    >>> 'dog'+'cat'
    'dogcat'
    ------------702.py-------------------------
    #!/usr/bin/python
    #coding utf-8
    def add(x, y) :
        return x + y
    print add(1, 2)
    print add('Hi', '--Tom!')
    hp@ubuntu:~/py$ python 702.py
    3
    Hi--Tom!
    ------------------------------------------
    @学习摘录 703:创建自己的类!
    #!/usr/bin/python
    #coding: utf-8 
    __metaclass__ = type # 确定使用新式类
    class Person :
        def setName(self, name) :
            self.name = name
        def getName(self) :
            return self.name
        def greet(self) :
            print "Hello, world! I'm %s." % self.name
    foo = Person()
    bar = Person()
    foo.setName('Jim')
    bar.setName('Tom')
    foo.greet()
    bar.greet()
    print "陈立宾"
    print type(bar)
    ------------------------------------------
    @学习摘录 704:python并不直接支持私有方式
    class Secretive :
        def __inaccess(self) :
            print "Bet you can't see me..."
        def access(self) :
            print "The secret message is :"
            self.__inaccess()
    >>> s = Secretive()
    >>> s.access()
    >>> s.__inaccess() 出错
    >>> Secretive._Secretive__inaccess()
    确保其他人不会访问对象的方法和特性是不可能的,但是这类 “名称变化术”就是他们不应该访问这些函数或者特性的强有力信号!
     -- 完成私有也可以使用单下划线,不过是个习惯,但确实有效果。
      例如,前面有下划线的名字都不会被带星号的 imports 语句 (from module import *) 导入!
    @学习摘录 705:类的命名空间
      像方法一样,类作用域内的变量也可以被所有实例访问。
    @学习摘录 706:指定超类
    @学习摘录 707:调查继承
    


  • 相关阅读:
    Codevs 2597 团伙(并查集)
    Codevs 1074 食物链 2001年NOI全国竞赛
    Bzoj 3831 [Poi2014]Little Bird
    Codevs 4600 [NOI2015]程序自动分析
    Codevs 3287 货车运输 2013年NOIP全国联赛提高组(带权LCA+并查集+最大生成树)
    段落排版--中文字间距、字母间距
    段落排版--行间距(行高)
    段落排版--缩进
    文字排版--删除线
    文字排版--下划线
  • 原文地址:https://www.cnblogs.com/robbychan/p/3787025.html
Copyright © 2011-2022 走看看