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的时间加减。

原文地址:https://www.cnblogs.com/xiaonancheng/p/12644020.html