文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Python模块:时间表示转换器

Python模块:时间表示转换器

时间:2007-04-29  来源:wibrst

今天作加班时间计算,将这个模块整理,升级了一下:

# encoding:gb2312
#
# revision 2007.04.29 :
# 正则升级为带组名,
# 升级局部变量命名规则,
# 升级itv2time返回值表达式
# revision 2007.03.31 :
# 启动版本,
# 基本功能实现
# you can use for :
# 计算与日期无关的时分秒级别的时间差
# 如计算加班时间,电影字幕时间修正
# timeItv.py

import re

# 将计时器"时:分:秒"字符串转换为秒数间隔
def time2itv(_sTime):

_sP="^(?P<h>[0-9]+):(?P<m>[0-5][0-9]):(?P<s>[0-5][0-9])$"
_p=re.compile(_sP)
_mTime=_p.match(_sTime)

if _mTime:
t=map(int,_mTime.group('h','m','s'))
return 3600*t[0]+60*t[1]+t[2]
else:
return "[InModuleError]:time2itv(_sTime) invalid argument value"

# 将秒数间隔转换为计时器"时:分:秒"字符串
def itv2time(_iItv):

if type(_iItv)==type(1):
h=_iItv/3600
sUp_h=_iItv-3600*h
m=sUp_h/60
sUp_m=sUp_h-60*m
s=sUp_m
return '%02i:%02i:%02i'%(h,m,s)
else:
return "[InModuleError]:itv2time(_iItv) invalid argument type"

if __name__=="__main__":
# 用法示例仅供测试
sTime="1223:34:15"
itv=time2itv(sTime)
print itv # 4404855
print itv2time(itv) # 1223:34:15

# !不合约定的参数
print time2itv("12:34:95")
print time2itv("sfa123")
# print time2itv(itv)
print itv2time("451223")
print itv2time(sTime)

print itv2time(time2itv('19:12:00') - time2itv('09:03:00') )

相关阅读 更多 +
排行榜 更多 +
找茬脑洞的世界安卓版

找茬脑洞的世界安卓版

休闲益智 下载
滑板英雄跑酷2手游

滑板英雄跑酷2手游

休闲益智 下载
披萨对对看下载

披萨对对看下载

休闲益智 下载