概述
#!/usr/bin/python
# encoding: utf-8
import re
from itertools import imap, ifilter
# 定义正则表达式
patt = re.compile(r"""
(?P
d{4}-d{2}-d{2}sd{2}:d{2}:d{2}) # 日期时间s*,s* # 分隔符号
(?Pd+) # 数值
""", re.I|re.U|re.X)
def iterdatainfile(file):
"""从文件中逐条返回数据
"""
# 打开文件作为句柄handle
with open(file, 'rt') as handle:
# imap(patt.match, .. : 逐行用正则表达式patt解析从handle中读取的数据,
# ifilter(None, .. : 忽略无法匹配的行
for matched in ifilter(None,
imap(
patt.match,
handle)):
# 将解析的结果数据(dict)迭代返回
yield matched.groupdict()
# 准备一个统计器
meter = {}
# 用iterdatainfile()函数逐行处理文件中的数据
for data in iterdatainfile("data.txt"):
# 数据"dt"的分钟前部分作为key, 空列表为value;
# 数据添加到key的列表中;
meter.setdefault(
data["dt"][:-6],
[]).append(int(data["value"]))
# 遍历各个时间点及其对应的值列表
for dt, values in meter.items():
# 打印 dt, 对应列表的合计 / 列表元素的数量
print dt, sum(values)/len(values)
最后
以上就是清秀嚓茶为你收集整理的python datatime 平均值_python求数据的时间平均的全部内容,希望文章能够帮你解决python datatime 平均值_python求数据的时间平均所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复