python函数--字符串时间含pm/am转换为24小时制,加减时差
1 import datetime#字符串时间转换加变换时区 2 def timeutc(st='03/01/2020 06:09 pm'): 3 ''' 4 参数 st:带转换时间 str 5 return new :转换后的时间 str 6 ''' 7 tl=st.split(' ') 8 if tl[-1]=='pm': 9 hm=tl[-2].split(':') 10 h=int(hm[0])+12 11 m=hm[1] 12 else: 13 hm=tl[-2].split(':') 14 h=hm[0] 15 m=hm[1] 16 y=tl[0].split('/')[2] 17 mo=tl[0].split('/')[0] 18 d=tl[0].split('/')[1] 19 old = datetime.datetime(int(y), int(mo), int(d),int(h),int(m))#转换为datetime格式 20 new = old + datetime.timedelta(hours=5)#时差5 21 new=new.__format__('%Y %m %d %H:%M')#格式化输出 22 #print(new) 23 return new
主要使用datetime的时间加减。