zoukankan      html  css  js  c++  java
  • 你好同窗,我们开始吧,这是我们的第5次见面

    日子过得真快,又是想念你们的一天呢,今天也要记得微笑哦!!很久没有玩adobe的东西了,这几天摸鱼一下,手感已经生疏了,以前还打算一直学习下去,后来慢慢转变成了在合成上面的兴趣了呢,我知道很丑啦,所以只是在学习前的日常扯皮嘛,好啦好啦,开始学习了。

    小小的娱乐

    上次讲到了一小部分的装饰器,现在我们接着开始复习,关于decorator,要自带参数时,需要一个返回derector的高阶函数。

    @log('execute')

    def now():

      print(...)

    这个就相当于now= log('execute')(now)

    对于大量二进制转化可以自定义一个方法:

    def int2(x,base=2):

      return int(x,base)

    偏函数functools.partial() 固定了某一些参数

    创建偏函数时,可以接受函数对象、*args,**kw三个参数

    import functools

    max2= functools.partial(max,10)  这里的10将作为*arg的一部分自动加到左边了

    即max2(5,6,7)相当于

    args=(10,5,6 7)

    max(*args)

    模块module  一个Py文件

    包package 按目录组织模块

    对于sys模块的argv变量有>=1个元素,第一个元素必定是文件名。

    作用域 通过_作为前缀 此外还有特殊变量__xxx__注意这里是两个下滑空格

    _xxx __xxx是private,不应该直接被引用

    关于对象和模板其实也没设好说的,就两种编程的方式嘛,面向对象的话特点就是东西都一个个打包好,然后用哪个就调用哪一个,面向过程的话就是一整套行云流水地走下来,基本上各有各的特点吧,不过个人上建议可能面向对象比较好一点,对于后期维护这一块可能也是比较轻松的。

    数据封装的话就是def定义方法加上__的那种私有变量吧,但是也只是名义上的封装不被随意调度,如果你硬是要调用的话也不是不行。

    关于类,类的定义过程中第一个传入的参数一般是object,而方法传入的就是self,没什么为什么,只是一种约定俗成,要改也不是不行,只是大家都统一一些规范的话在交流上就会减少很多麻烦,而且这样子定义本来就很好,干嘛要另辟蹊径呢。

    继承和多态一个例子就明白了,class Animal()........classDog(Animal) 懂?在继承父类后你也可以对子类经一部增加一些方法,这个时候如果子类中的方法和父类的重名了,则子类就会覆盖父类的那个方法。莫非这就是所谓的逆子哈哈哈哈!!!

    是子类必属父类,是父类却不一定。

    多态的好处,就是不同的类的对象可以用同一种方法

    开闭的原则就是多态,对扩展开发;允许新增子类  对修改封闭:不需要修改依赖animal类的run_twice的函数等

    静态语言传入animal 类时对象必须为animal或者其子类,否则无法调用run函数

    动态语言不需要传入animal类,只要对象有一个run方法即可

    type()模块用于检测判断

    isinstance(a,(b,c))判断a是不是属于b或者c,当然后面也可以直接放一个,比如就只判断a是不是b,最后运行结果是true或者false

    dir()返回包含字符串的list,获得对象的所有属性和方法

  • 相关阅读:
    【转】VS2010中 C++创建DLL图解
    [转]error: 'retainCount' is unavailable: not available in automatic reference counting mode
    [转]关于NSAutoreleasePool' is unavailable: not available in automatic reference counting mode的解决方法
    【转】 Tomcat v7.0 Server at localhost was unable to start within 45
    【转】Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds. If
    【转】SVN管理多个项目版本库
    【转】eclipse安装SVN插件的两种方法
    【转】MYSQL启用日志,和查看日志
    【转】Repository has not been enabled to accept revision propchanges
    【转】SVN库的迁移
  • 原文地址:https://www.cnblogs.com/xingnie/p/9297869.html
Copyright © 2011-2022 走看看