后期做标注,长期
给元组的元素命名
- 类似其他语言的枚举类型,定义一些列数值常量
- 使用标准库中 collections.namedtuple 替代内置 tuple
person = ('jack', 22, 'male')
"""
方案1 类似其他语言的枚举类型,定义一些列数值常量
"""
NAME, AGE, SEX = range(0, 3)
print(person[NAME])
"""
方案2 使用标准库collections.namedtuple 替代内置的 tuple
"""
from collections.namedtuple
# 定义一个namedtuple
S = namedtuple('Person', ['name', 'age', 'sex'])
# 使用
person1 = S('jack', 33, 'male')
person2 = S('lee', 34, 'female')
print(person1) # 输出Person(name='jack', age=22, sex='male')
print(person1.name) # 输出 jack
统计序列中的出现频度
使用collections中的Counter
from collections import Counter
import re
# counter_file.txt是一篇英文文章
txt = open("counter_file.txt").read() # 读取内容
data = re.split("\W+", txt) # 正则分离单词,返回一个列表
final = Counter(data) # 应用该列表,返回一个字典,键值对是 值:出现次数
result = final.most_common(10) # 统计频度最高的10个单词,返回一个列表
print(result)
"""
输出
[('the', 34), ('blood', 26), ('I', 24), ('to', 19), ('was', 18), ('and', 15), ('
of', 13), ('donation', 12), ('time', 11), ('it', 10)]
"""