Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python上将字符串转换为日期类型_Python_String_Date_Type Conversion - Fatal编程技术网

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

在Python上将字符串转换为日期类型,python,string,date,type-conversion,Python,String,Date,Type Conversion,我有这个字符串: '2012-02-10' # (year-month-day) 我需要它作为日期类型,以便使用日期函数isoweekday() 有人知道如何将此字符串转换为日期吗?您可以使用 例如: >>> from datetime import datetime >>> datetime.strptime('2012-02-10' , '%Y-%m-%d') datetime.datetime(2012, 2, 10, 0, 0) >>&g

我有这个字符串:

'2012-02-10' # (year-month-day)
我需要它作为日期类型,以便使用日期函数
isoweekday()

有人知道如何将此字符串转换为日期吗?

您可以使用

例如:

>>> from datetime import datetime
>>> datetime.strptime('2012-02-10' , '%Y-%m-%d')
datetime.datetime(2012, 2, 10, 0, 0)
>>> _.isoweekday()
5
您可以找到包含所有
strtime
指令的表


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

使用:


虽然这个问题似乎是根据OP的请求回答的,但没有一个答案提供了一个好方法来获取
datetime.date
对象,而不是
datetime.datetime
。因此,对于那些搜索和查找此线程的人:

datetime.date
没有
.strtime
方法;改为使用
datetime.datetime
上的一个,然后在其上调用
.date()
以接收
datetime.date
对象

像这样:

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

@user1072627:和。。它起作用了吗?这正是我所做的:如果datetime.strtime(a,“%Y-%m-%d”).isoweekday()=6:PONTO_MOVIMENTO=a还有一个问题。。。如何在日期中添加天数?例如,如果isoweekday()==6,我需要在2天内增加日期。你知道我是怎么做的吗?再次感谢!我发现已经在使用timedelta了。但是谢谢@user1072627:Yes
timdelta
是正确的工具。尽管您已经找到了,但我还是添加了一个示例。:)当我需要datetime.date对象而不是datetime.datetime对象时,我使用了类似的方法。很遗憾,datetime.date没有strTime()方法。这是真正的答案。这应该是可接受的答案。如果我将datetime.datetime对象转换为datetime.date对象,datetime.date对象与datetime.timedelta()方法不兼容。如果对象是datetime.date,是否有方法进行日期计算(例如从日期中添加或减去天数)?这对同样需要所有日期和时间的人会有所帮助:>datetime.datetime.StrTime('2020-10-13 00:00:00','%Y-%m-%d%H:%m:%S')
from datetime import datetime

a = datetime.strptime(f, "%Y-%m-%d")
>>> import datetime
>>> date = datetime.datetime.strptime('2012-02-10', '%Y-%m-%d')
>>> date.isoweekday()
5
>>> from datetime import datetime
>>> year, month, day = map(int, my_date.split('-'))
>>> date_object = datetime(year, month, day)
>>> from datetime import datetime
>>> datetime.strptime('2014-12-04', '%Y-%m-%d').date()
datetime.date(2014, 12, 4)