python 時間 T 去掉 帶上ms 毫秒 時間格式的操作

我就廢話不多說瞭,大傢還是直接看代碼吧~

import datetime
# 時間格式 .%f 毫秒
## "%Y-%m-%dT%H:%M:%S.%f"
# 格式 秒
## "%Y-%m-%dT%H:%M:%S"
# 格式 分鐘
## "%Y-%m-%dT%H:%M"
# 將 字符串格式的時間,轉成時間毫秒格式
update_time = datetime.datetime.strptime(i["UpdatedAt"][:26], "%Y-%m-%dT%H:%M:%S.%f")
# 將時間格式轉成 字符串
update_time = update_time.strftime('%Y-%m-%d %H:%M:%S.%f')

補充:Python T-N天 日期缺失問題

我就廢話不多說瞭,大傢還是直接看代碼吧~

#! /usr/bin/env python
# -*- coding:utf-8 -*-
from datetime import datetime, date, timedelta
 
m = [('JD','2018-11-08'),('Aussie FS','2018-10-10'),('Braun FS','2018-11-09'),('Global FS','2018-11-07')]
t = [('JD',	'2018-09-10'),('JD',	'2018-09-11'),('JD',	'2018-09-12'),
('JD',	'2018-09-13'),
('JD',	'2018-09-14'),
('JD',	'2018-09-15'),
('JD',	'2018-11-08'),
('Aussie FS',	'2018-10-02'),
('Aussie FS',	'2018-10-03'),
('Aussie FS',	'2018-10-04'),
('Aussie FS',	'2018-10-05'),
('Aussie FS',	'2018-10-06'),
('Aussie FS',	'2018-10-07'),
('Aussie FS',	'2018-10-08'),
('Braun FS',	'2018-10-28'),
('Braun FS',	'2018-11-08'),
('Braun FS',	'2018-10-30'),
('Braun FS',	'2018-10-31'),
('Braun FS',	'2018-11-01'),
('Global FS',	'2018-09-18'),
('Global FS',	'2018-09-19'),
('Global FS',	'2018-09-20'),
('Global FS','2018-11-08'),
('Global FS',	'2018-09-22'),
('Global FS',	'2018-09-23')
 
]
mm = '2018-11-08'
for x in range(0, len(m)):
    n = []
    n_new = []
    i = 0
    while i < len(t):
        if t[i][0] == m[x][0]:
            n.append([t[i][0], t[i][1]])
        i += 1
    n_new = sorted(list(n))
    if n_new[-1][1] != mm:
        print '%s最大業務時間為:%s,沒有到達T-1:%s'%(n_new[-1][0],n_new[-1][1],mm)
 
def get_nday_list(n):
    before_n_days = []
    for i in range(1, n + 1)[::-1]:
        before_n_days.append(str(date.today() - timedelta(days=i)))
    return before_n_days
 
a = get_nday_list(10)
b = get_nday_list(30)
ttt = []
for x in range(0, len(m)):
    d = []
    d_new = []
    i = 0
    while i < len(t):
        if t[i][0] == m[x][0]:
            d.append([t[i][0], t[i][1]])
        i += 1
    d_new = sorted(list(d))
    print d_new
    ll = []
    for xx in range(0,len(d_new)):
        ll.append(d_new[xx][1])
    kk = 0
    while kk<len(a):
        if a[kk] not in ll:
            ttt.append([m[x][0],a[kk]])
        kk +=1
print '業務日期缺失的為:%s'%(ttt)
 

補充:django drf json格式化日期時間帶T的問題 基於python的解決方法

# models.py 
update_time = models.DateTimeField(verbose_name=u'更新時間', default=timezone.now)

問題:天 與 小時的中間帶 T

"gmt_created": "2019-05-19T22:47:46.853262"

解決方法:

# serializers.py 
class DeviceSerialiser(ModelSerializer):
    # 設置日期格式化格式
    update_time = serializers.DateTimeField(format='%Y-%m-%d %H:%M:%S') 
    class Meta:
        model = WaterDevice
        fields = ('__all__')

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。