1.对字符串的归一化处理(即替换异常字符)可以用字符串的replace方法
2.对字典的更新处理可以用字典的get方法实现
a[b] = a.get(b,0) +1 # 新增键值对
3.列表的sort函数:
key参数:
传入一个函数,此函数将作用于每一个元素,得到新的序列,根据新的序列从小到大
当不传入参数时,默认为None。 如果为可迭代对象,不传入参数,也可以排序,如何实现的?(可能是根据每个元素的第一域比较的)
如果key函数为operator.itemgetter函数,可进行多重比较,即在第一重比较值相同的情况下根据第二域比较。(
operator模块提供的itemgetter函数用于获取对象的哪些维的数据,参数为一些序号(即需要获取的数据在对象中的序号),下面看例子。
a = [1,2,3]
>>> b=operator.itemgetter(1) //定义函数b,获取对象的第1个域的值
>>> b(a)
2
>>> b=operator.itemgetter(1,0) //定义函数b,获取对象的第1个域和第0个的值
>>> b(a)
(2, 1)
要注意,operator.itemgetter函数获取的不是值,而是定义了一个函数,通过该函数作用到对象上才能获取值。
reverse = False 升序(默认)
4.元组可直接对两个变量赋值。
5.词频统计中用len()==1 排除‘是’,标点符号之类的无实际意义的助词。
6.win10系统记事本保存的是ansi编码,打开文件选择编码时要注意,也可以添加errors="ignore"参数忽略错误。
7.win10cmd使用gb2312编码,在解码时注意。