3

我有类似的东西

s= "2010-02-12 12:12:10"
r= repr(datetime.datetime(*time.strptime(s, "%Y-%m-%d %H:%M:%S")[:6]))
print r

打印出来的值是datetime.datetime(2010, 2, 12, 12, 12, 10)

我的问题是:如何访问 r 中的每个值?例如,我只想要年份的值,即 2012。我尝试做 r[0] 但它给了我字母 'd' ......

谢谢!

4

3 回答 3

7

你为什么用repr()

>>> s = "2010-02-12 12:12:10"
>>> r = datetime.datetime(*time.strptime(s, "%Y-%m-%d %H:%M:%S")[:6])
>>> r.year
2010

有关date对象的更多信息:http: //docs.python.org/library/datetime.html#date-objects

于 2012-10-23T09:05:09.247 回答
7

使用将其转换为字符串(或者实际上, Python 可以使用repr的对象的 *repr*esentation。str () 用于将事物转换为字符串)。datetime

保持简单:

>>> r = datetime.datetime(*time.strptime(s, "%Y-%m-%d %H:%M:%S")[:6])
>>> r.year
2010
于 2012-10-23T09:05:53.537 回答
3

您可以直接访问年份属性

datetime.date.today().year
于 2012-10-23T09:06:10.957 回答