Discuss / Python / 练习

练习

Topic source

Teresa委

#1 Created at ... [Delete] [Delete and Lock User]
import re
from datetime import datetime, timezone, timedelta

def to_timestamp(dt_str, tz_str):
    dtime = datetime.strptime(dt_str, '%Y-%m-%d %H:%M:%S')
    print(dtime)
    tz=re.match(r'\w{3}([\+\-])(\d+)\:(\d+)',tz_str)
    print(tz.groups())
    t=tz.group(2)
    print(tz.group(0),tz.group(1),tz.group(2))
    if tz.group(1)=='+':
        dtime=dtime+timedelta(hours=8-int(t))
        print('+,',dtime,datetime.fromtimestamp(1433121030.0))
    elif tz.group(1)=='-':
        dtime=dtime+timedelta(hours=8+int(t))
        print('-,',dtime,datetime.fromtimestamp(1433121030.0))
    return dtime.timestamp()

# 测试:
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