摘要:
values = [11, 22, 33,44,55,66,77,88,99,90] my_dict = {} for value in values: if value>66: if my_dict.has_key('k1'): my_dict['k1'].append(value) else: 阅读全文
摘要:
1. MRO(Method Resolution Order):方法解析顺序,主要用于在多继承时判断调的属性的路径(来自于哪个类). 3. C3算法 4.C3算法规则 例 1. 例 2. class A: passclass B(A): passclass C(A): passclass D(B, 阅读全文
摘要:
思路: 1.导入logging模块 2.简单配置一下logging模块 3.出现异常的时候,向日志里写错误信息 配置参数 例 logger对象配置 logging库提供了多个组件:Logger、Handler、Filter、Formatter。Logger对象提供应用程序可直接使用的接口,Handl 阅读全文
摘要:
总结:其实就是父类对子类的约束,子类必须实现XX方法,有两个方案方案一:使用抽象类和抽象方法,使用频率较低方案二:使用人为的跑出异常,并尽量使用NotImplementedError,这样比较专业,明确 阅读全文
摘要:
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... 阅读全文
摘要:
类与类之间的关系1.依赖关系(一个对象当另一个对象的参数) 关系最浅, 阅读全文
摘要:
1. 面向对象和面向过程 1.面向过程:核心是过程,是流水线 优缺点: 1.流程化,编写简单 2.可扩展性差 2.面向对象:核心是对象(对象:具有相同属性和动作的结合体) 优缺点: 1.可扩展行强 2.复杂度高于面向过程总的来说: 面向对象适合大型项目 面向过程适合小型脚本 2.如何编写面向对象的程序(重点) 1.先创建类,归类,... 阅读全文
摘要:
1.匿名函数(名字统一叫lambda) 1.语法 lambda 参数:返回值 2.参数可以有多个,用逗号隔开 3.只能写一行,执行结束后直接返回值 4返回值和正常函数一样,可以是任意值 5.列: f=lambda n:n**n #传入一个数n,返回她的n次方 print(f(10)) 2.sorted 排序函数 1.语法: ... 阅读全文
摘要:
1. 内置函数 1.双下划线方法的使用 1.原来it=lst.__iter__() print(it__next__()) 2.现在it=iter(list) print(next(it)) 2.id() hash() id() 查看对象的内存地址 hash() 结果是唯一的数字 目的为了储存 数字的hash值是他的本身,... 阅读全文