Discuss / Python / 试了好多次我是不是没救了,感觉正则会用了

试了好多次我是不是没救了,感觉正则会用了

Topic source

__未央灬

#1 Created at ... [Delete] [Delete and Lock User]

#--coding:utf-8-- import re

#--coding:utf-8-- import re from datetime import datetime,timedelta,timezone

def to_timestamp(dt_str,tz_str):

# 匹配UTC并转化为int类型
r=re.search(r'(\-*\+*)0*(\d*):*00$',tz_str)
utc=int(r.group(1)+r.group(2))
# 创建时区UTC,并设置UTC
tz_utc=timezone(timedelta(hours=utc))
# str转化为datetime
dt=datetime.strptime(dt_str,'%Y-%m-%d %H:%M:%S')
# 强制设置为UTC_str
dt_utc=dt.replace(tzinfo=tz_utc)
# datetime转化timestamp
d=dt_utc.timestamp()
return d

测试:

t1 = to_timestamp('2015-6-1 08:10:30', 'UTC+7:00') assert t1 == 1433121030.0, t1

t2 = to_timestamp('2015-5-31 16:10:30', 'UTC-09:00') assert t2 == 1433121030.0, t2

print('ok')


  • 1

Reply