摘要: 思路: 1.导入logging模块 2.简单配置一下logging模块 3.出现异常的时候,向日志里写错误信息 配置参数 例 logger对象配置 logging库提供了多个组件:Logger、Handler、Filter、Formatter。Logger对象提供应用程序可直接使用的接口,Handl 阅读全文
posted @ 2018-11-12 17:05 阿布_alone 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 总结:其实就是父类对子类的约束,子类必须实现XX方法,有两个方案方案一:使用抽象类和抽象方法,使用频率较低方案二:使用人为的跑出异常,并尽量使用NotImplementedError,这样比较专业,明确 阅读全文
posted @ 2018-11-12 16:48 阿布_alone 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 1. issubclass,type,isinstance 1.issubclass 判断xxx是否yyy的子类 例: class Foo: pass class Bar(Foo): pass class Base(Bar): pass print(issbuclass(Bar,Foo)) #TRUE pr... 阅读全文
posted @ 2018-11-09 19:10 阿布_alone 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 类与类之间的关系1.依赖关系(一个对象当另一个对象的参数) 关系最浅, 阅读全文
posted @ 2018-11-09 16:33 阿布_alone 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2018-11-07 20:19 阿布_alone 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 1. 面向对象和面向过程 1.面向过程:核心是过程,是流水线 优缺点: 1.流程化,编写简单 2.可扩展性差 2.面向对象:核心是对象(对象:具有相同属性和动作的结合体) 优缺点: 1.可扩展行强 2.复杂度高于面向过程总的来说: 面向对象适合大型项目 面向过程适合小型脚本 2.如何编写面向对象的程序(重点) 1.先创建类,归类,... 阅读全文
posted @ 2018-11-06 21:20 阿布_alone 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 1.匿名函数(名字统一叫lambda) 1.语法 lambda 参数:返回值 2.参数可以有多个,用逗号隔开 3.只能写一行,执行结束后直接返回值 4返回值和正常函数一样,可以是任意值 5.列: f=lambda n:n**n #传入一个数n,返回她的n次方 print(f(10)) 2.sorted 排序函数 1.语法: ... 阅读全文
posted @ 2018-11-05 21:06 阿布_alone 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 1. 内置函数 1.双下划线方法的使用 1.原来it=lst.__iter__() print(it__next__()) 2.现在it=iter(list) print(next(it)) 2.id() hash() id() 查看对象的内存地址 hash() 结果是唯一的数字 目的为了储存 数字的hash值是他的本身,... 阅读全文
posted @ 2018-11-03 10:21 阿布_alone 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 1. 生成器本身是迭代器 1.写迭代器的方式 1.生成器函数 2.生成器表达式 3.各种推导式 2.生成器函数 函数内部有yield, yield返回->return yield把函数分段进行 生成器可以使用for循环来获得里面的元素 def func yield ... 阅读全文
posted @ 2018-11-02 17:12 阿布_alone 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 1. 函数名的使用 1.函数名是一个变量,函数名储存的是函数的内存地址 2.函数名可以赋值给其他变量 3.函数名可以当容器类对象的元素 4.函数名可以当其他函数的参数 5.函数名可以做函数的返回值 2.闭包:闭包就是内层函数对外层函数(非全局)变量的使用 1.闭包的作用 1.可以保护变量不收侵害 2.常用变量常驻内存 2.闭包的判断 ... 阅读全文
posted @ 2018-11-01 17:02 阿布_alone 阅读(117) 评论(0) 推荐(0) 编辑
TOP