python 3 中可用的时间和日期格式

Usable time & date format in python 3

我可能是个菜鸟问这个问题,因为我找不到这个问题的答案。我在 csv 文件中以 YYmmDD 格式将“170101,00:00”作为日期。一段代码:

import csv
from datetime import datetime

with open('T2_x.csv') as readcsvfile:
    readcsv=csv.reader(readcsvfile)
    header=next(readcsv)

    data=[]
    for row in readcsv:
        date=datetime.strptime(row[0],"%Y%m%d")
        time=datetime.strptime(row[6],"%H:%M")
        data.append(time,date)
        print(data)

with open('T2_xw.csv','w',newline='')as writecsvfile:
    writecsv=csv.writer(writecsvfile)
    writecsv.writerows([data])

时间格式工作正常(“%H:%M”)。但是提供“%Y%m%d”作为格式会产生 "ValueError: time data '170101' does not match format '%Y%m%d'".

根据 documentation

%y Year without century as a zero-padded decimal number. 00, 01, ..., 99

您必须更改:

date=datetime.strptime(row[0],"%Y%m%d")

至:

date=datetime.strptime(row[0],"%y%m%d")