parsingdatestring?
我有一个数据集的所有date有以下格式:
2012-10-09T19:00:55Z
我希望能够使用像.weekday
这样的方法。 如何在Python中将它们转换为正确的格式?
您可以使用dateutil.parser.parse
将stringparsing为date时间对象。
dateutil.parser.parse
会尝试猜测你的string的格式,如果你事先知道确切的格式,那么你可以使用datetime.strptime
,它提供了一个格式string(见Brent Washburne的答案)。
from dateutil.parser import parse a = "2012-10-09T19:00:55Z" b = parse(a) print(b.weekday()) # 1 (equal to a Tuesday)
这已经在这里得到了解答: 如何将ISO 8601date时间string转换为Pythondate时间对象?
d = datetime.datetime.strptime( "2012-10-09T19:00:55Z", "%Y-%m-%dT%H:%M:%SZ" ) d.weekday()
你应该看moment
女巫是momentjs
Python的优秀momentjs
一个端口。
它的一个优点是支持ISO 8601
string格式,以及“%格式”:
import moment timestring='2012-10-09T19:00:55Z' m = moment.date(time_string, '%Y-%m-%dT%H:%M:%SZ') print m.format('YYYY-MD H:M') print m.weekday
结果:
2012-10-09 19:10 2