这有效!
>>> from datetime import date
>>> today=date(2011,10,11)
但我该怎么做?
>>> day = '2011/10/11'
>>> today=date(day.split('/'))
请注意:
>>> day.split('/')
['2011', '10', '11']
我看过this link.But我需要日期()的整数而不是列表
答案 0 :(得分:10)
使用专为解析日期而设计的datetime.datetime.strptime()
:
In [5]: datetime.datetime.strptime('2011/12/03', '%Y/%m/%d').date()
Out[5]: datetime.date(2011, 12, 3)
答案 1 :(得分:2)
Python有一个特殊的语法,用于将序列作为参数传递:
today=date(*day.split('/'))
但参数也必须是整数,所以你可以使用:
today=date(*map(int,day.split('/')))
答案 2 :(得分:2)
这应该有效:
date(*map(int, day.split('/')))
>>> map(int, day.split('/'))
[2011, 10, 11]
>>> date(*map(int, day.split('/')))
datetime.date(2011, 10, 11)
答案 3 :(得分:2)
您可以遍历从day.split()获得的列表,并将每个条目转换为int。
today = date([int(x) for x in day.split('/')])
答案 4 :(得分:0)
>>> date( *(map(int,day.split('/'))))
datetime.date(2011, 10, 11)