def to_timestamp(dt_str, tz_str):
dt=datetime.strptime(dt_str, '%Y-%m-%d %H:%M:%S') #将输入的时间由str转换为datetime
tz=int(re.match('(.+?)((\+|\-)\\d+)', tz_str).group(2))#使用正则表达式提取出时区信息并转换为int形式
dt=dt.replace(tzinfo=timezone(timedelta(hours=tz))) #转换时区到输入的时区信息
dt=dt.timestamp() #将datetime格式转换为目标timestamp格式
return dt #返回结果
好简洁,想问下为什么正则匹配里面((\+|\-)\\d+) 这个\d前面还有一个\呀
Sign in to make a reply
叶子大一片
def to_timestamp(dt_str, tz_str):
dt=datetime.strptime(dt_str, '%Y-%m-%d %H:%M:%S') #将输入的时间由str转换为datetime
tz=int(re.match('(.+?)((\+|\-)\\d+)', tz_str).group(2))#使用正则表达式提取出时区信息并转换为int形式
dt=dt.replace(tzinfo=timezone(timedelta(hours=tz))) #转换时区到输入的时区信息
dt=dt.timestamp() #将datetime格式转换为目标timestamp格式
return dt #返回结果