在python上将字符串转换为日期类型

Convert string into Date type on Python

本问题已经有最佳答案,请猛点这里访问。

在有这个字符串:

1
'2012-02-10' # (year-month-day)

我需要它的AA型两个约会,我的约会isoweekday()使用功能。

美国能源部的人知道如何在这个字符串可以convert到约会吗?


虽然这个问题似乎是按照OP的要求回答的,但没有一个答案能提供一个好的方法来获得一个datetime.date对象,而不是一个datetime.datetime对象。因此,对于那些搜索并找到这个线索的人:

datetime.date没有.strptime方法,用datetime.datetime上的方法代替,然后调用.date()来接收datetime.date对象。

像这样:

1
2
3
>>> from datetime import datetime
>>> datetime.strptime('2014-12-04', '%Y-%m-%d').date()
datetime.date(2014, 12, 4)


你可以用EDOCX1[0]

例子:

1
2
3
4
5
>>> from datetime import datetime
>>> datetime.strptime('2012-02-10' , '%Y-%m-%d')
datetime.datetime(2012, 2, 10, 0, 0)
>>> _.isoweekday()
5

您可以在这里找到包含所有strptime指令的表。

如果.isweekday() == 6增加2天,可以使用timedelta()增加:

1
2
3
4
5
6
7
8
9
>>> import datetime
>>> date = datetime.datetime.strptime('2012-02-11' , '%Y-%m-%d')
>>> if date.isoweekday() == 6:
...     date += datetime.timedelta(days=2)
...
>>> date
datetime.datetime(2012, 2, 13, 0, 0)
>>> date.strftime('%Y-%m-%d')   # if you want a string again
'2012-02-13'


1
2
3
from datetime import datetime

a = datetime.strptime(f,"%Y-%m-%d")

1
2
3
>>> from datetime import datetime
>>> year, month, day = map(int, my_date.split('-'))
>>> date_object = datetime(year, month, day)


使用datetime.datetime.strptime

1
2
3
4
>>> import datetime
>>> date = datetime.datetime.strptime('2012-02-10', '%Y-%m-%d')
>>> date.isoweekday()
5