python处理文本数据
读取txt文件里的数据(每行一个数据),统计不同元素出现的次数,并按照key进行排序,将排序后的key存到列表data_index里,对应的value存到data里。
from collections import Counter
data_temp = []
f = open('D:/nettrace.txt', 'r') # 以只读方式打开文件
line = f.readline() # 读取一行数据,读取的数据类型为str
line = line[:-1] # 去掉行尾的换行符
data_temp.append(int(line)) # 将元素数据转换为int型并存到list里
while line: # 循环读取整个文件
line = f.readline()
line = line[:-1]
if line != '':
data_temp.append(int(line))
f.close()
result = Counter(data_temp) # 使用Counter对每个不同的元素计数,返回类型为collection.Counter,可类比dict字典类型
da = sorted(result.items(), key=lambda d: d[0]) # 按照key进行排序,由小到大,返回的类型为[(key1,value1),(key2,value2)....]
data_index = []
data = []
for i in range(len(da)):
data_index.append(da[i][0])
data.append(da[i][1])
print(data_index)
print(data)