改善python编程
1.capwords(s) 函数 string库下的函数
它能够去除两端的空白符,再将连续的空白符用一个空格代替。
2.operator模块下的itemgetter()函数, itemgetter(item, ...) --> itemgetter object
itemgetter()参数表示可迭代对象的index,个数可根据可迭代对象的个数变化。
gameresult = [['Bob',95.00,'A'],['Alan',86.0,'C'],['Mandy',82.5,'A'],['Rob',
86,'E']]
第一个输出结果:按等级排序,如果等级相同就按成绩排序
第二个输出结果:按成绩排序,当成绩相同时就按等级排序
第三个输出结果:按姓名排序,如果姓名相同就按成绩排序
3.使用 defaultdict()
from collections import defaultdict
my_dict=defaultdict(int)
传入一个int作为默认的value,相当于初始化,假设该字典中的key不存在,不会报错keyerro,默认value为0.
4.使用collections.Counter
Counter 类是自 Python2.7 起增加的,属于字典类的子类,是一个容器对象,主要用来统计散列对象。
支持集合操作 +、-、&、|,其中 & 和 | 操作分别返回两个 Counter 对象各元素的最小值和最大值。它提供了 3 种不同的方式来初始化:
Counter("success") # 可迭代对象
Counter(s=3,c=2,e=1,u=1) # 关键字参数
Counter({"s":3,"c":2,"u":1,"e":1}) # 字典
可以使用 elements() 方法来获取 Counter 中的 key 值
利用 most_common() 方法可以找出前 N 个出现频率最高的元素以及它们对应的次数。
当访问不存在的元素时,默认返回为 0 而不是抛出 KeyError 异常。
update() 方法用于被统计对象元素的更新,原有 Counter 计数器对象与新增元素的统计
计数值相加而不是直接替换它们。
subtract() 方法用于实现计数器对象中元素统计值相减,输入和输出的统计值允许为 0 或
者负数。