月格式说明符似乎不起作用。
from datetime import datetime endDate = datetime.strptime('10 3 2011', '%j %m %Y') print endDate 2011-01-10 00:00:00 endDate = datetime.strptime('21 5 1987', '%j %m %Y') print endDate 1987-01-21 00:00:00
现在,根据手册,手册:
%m =月,十进制数[01,12]。
那么,除了我试图理解我的django __filter查询为什么什么都不返回(输入的日期无效!)的原因之外,我还缺少什么呢?我已经尝试了03,05但无济于事。
03
05
事物,平台,架构等的版本:
$ python --version Python 2.7 $ python3 --version Python 3.1.2 $ uname -r 2.6.35.11-83.fc14.x86_64 (that's Linux/Fedora 14/64-bit).
您不能将它们%j与其他格式的代码混合使用,%m因为如果您在表中查看的话,所链接的%j是十进制数字[001,366],因此该年的10天与该年的10天相对应,因此它是01一月 …
%j
%m
所以你只需要写:
>>> datetime.strptime('10 2011', '%j %Y') datetime.datetime(2011, 1, 10, 0, 0)
否则,如果您想使用10作为挂载日,则应该执行以下操作:
>>> datetime.strptime('10 3 2011', '%d %m %Y') datetime.datetime(2011, 3, 10, 0, 0)