摘要:
isinstance(obj,cls) 检查obj是否是cls类的对象 issubclass(sub,super) 检查sub类是否是super类的子类 反射 是用字符串类型的名字 去操作 变量 为什么不用eval()? 因为eval()操作的是一个字符串代码,这段字符串我们拿过来对立面的信息什么都 阅读全文
摘要:
封装 广义上面向对象的封装 :代码的保护,面向对象的思想本身就是一种只让自己的对象能调用自己类中的方法 狭义上的封装 —— 面向对象的三大特性之一属性 和 方法都藏起来 不让你看见 私有属性 所有的私有 都是在变量的左边加上双下划綫 对象的私有属性 类中的私有方法 类中的静态私有属性 所有的私有的 阅读全文
摘要:
接口类和抽象类都是一种编程思想或者规范 从JAVA中而来 抽象类:python原生支持的 接口类:python原生不支持 它们的目的是规范 java:java里的所有类的继承都是单继承,所以抽象类完美的解决了单继承需求中的规范问题但对于多继承的需求,由于java本身语法的不支持,所以创建了接口Int 阅读全文
摘要:
继承 有的类中属性、方法会重用,就可以用继承 如果没有__init__,就执行父类__init__ 父类没有的方法,子类有的:派生属性 父类没有的方法,子类有的:派生方法 super() 调用父类 Dog类可变为下面: 多继承 钻石继承 新式类中的继承顺序 : 广度优先 新式类就是继承obkect 阅读全文
摘要:
组合:一个对象的属性值是另外一个类的对象比如:alex.weapon 是 Weapon类的对象 > alex.weapon.hand18 练习 阅读全文
摘要:
生活中的类和对象: 类:人类 手机 对象:某个人 某个手机 类 抽象的 有什么属性 对象 有具体的值,根据类规范的 面向过程 VS 面向对象 面向对象的三大特性 : 继承 多态 封装 自定义类 实例化:类名加括号就是实例化,会自动触发__init__函数的运行,可以用它来为每个实例定制自己的特征 对 阅读全文
摘要:
包 包的本质就是一个包含__init__.py文件的目录 在python3中,即使包下没有__init__.py文件,import 包仍然不会报错,而在python2中,包下一定要有该文件,否则import 包报错 凡是在导入时带点的,点的左边都必须是一个包 如果不想在导入模块时打很多点,可以添加路 阅读全文
摘要:
http://www.cnblogs.com/Eva-J/articles/7228075.html#_label9 序列化模块 为什么要序列化? 数据存储网络上传输的时候 从数据类型 --> 字符串的过程 序列化从字符串 --> 数据类型的过程 反序列化 json --通用的序列化格式 通用的序列 阅读全文
摘要:
http://www.cnblogs.com/Eva-J/articles/7228075.html#_label5 collections模块 队列:先进先出 FIFO 堆栈:先进后出 时间模块 表示时间的三种方式: 在Python中,通常有这三种方式来表示时间:时间戳、元组(struct_tim 阅读全文
摘要:
正则测试:http://tool.chinaz.com/regex/ 谈到正则,就只和字符串相关了 参考:http://www.cnblogs.com/Eva-J/articles/7228075.html#_label10 几个常用的非贪婪匹配: *? 重复任意次,但尽可能少重复+? 重复1次或更 阅读全文