如何从 datetime.datetime 对象中提取小时和分钟?
Posted
技术标签:
【中文标题】如何从 datetime.datetime 对象中提取小时和分钟?【英文标题】:How can I extract hours and minutes from a datetime.datetime object? 【发布时间】:2014-11-03 10:51:13 【问题描述】:我需要从 created_at 属性返回的 datetime.datetime 对象中提取一天中的时间,但我该怎么做呢?
这是我获取 datetime.datetime 对象的代码。
from datetime import *
import tweepy
consumer_key = ''
consumer_secret = ''
access_token = ''
access_secret = ''
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_secret)
api = tweepy.API(auth)
tweets = tweepy.Cursor(api.home_timeline).items(limit = 2)
t1 = datetime.strptime('Wed Jun 01 12:53:42 +0000 2011', '%a %b %d %H:%M:%S +0000 %Y')
for tweet in tweets:
print (tweet.created_at - t1)
t1 = tweet.created_at
我只需要从t1
中提取小时和分钟。
【问题讨论】:
【参考方案1】:我不知道你想如何格式化,但你可以这样做:
print("Created at %s:%s" % (t1.hour, t1.minute))
例如。
【讨论】:
解释一下。它应该做什么?它是如何工作的?它使用了 Python 的哪些特性?你能链接到文档吗?【参考方案2】:如果时间是11:03,那么afrendeiro's answer将打印11:3。
您可以将分钟数归零:
"Created at :d::02d".format(tdate.hour, tdate.minute)
或者换一种方式使用tdate.time()
,只占用小时/分钟部分:
str(tdate.time())[0:5]
【讨论】:
【参考方案3】:由于 Tweepy 两者兼而有之,因此对这些事情使用时间戳会更容易:
import datetime
print(datetime.datetime.fromtimestamp(int(t1)).strftime('%H:%M'))
【讨论】:
【参考方案4】:import datetime
YEAR = datetime.date.today().year
MONTH = datetime.date.today().month
DATE = datetime.date.today().day
HOUR = datetime.datetime.now().hour
MINUTE = datetime.datetime.now().minute
SECONDS = datetime.datetime.now().second
print(YEAR, MONTH, DATE, HOUR, MINUTE, SECONDS)
2021 3 11 19 20 57
【讨论】:
解释一下。【参考方案5】:datetime 具有字段 hour
和 minute
。因此,要获取小时和分钟,您可以使用 t1.hour
和 t1.minute
。
但是,当您减去两个日期时间时,结果是 timedelta,它只有 days
和 seconds
字段。因此,您需要根据需要进行除法和乘法运算以获得所需的数字。
【讨论】:
Re "只有天和秒字段":documentation says"只有天、秒和微秒在内部存储" (也是微秒)。解释是什么?由于 OP 似乎已经离开了大楼,也许有人可以插话?以上是关于如何从 datetime.datetime 对象中提取小时和分钟?的主要内容,如果未能解决你的问题,请参考以下文章
Python:从 `datetime.datetime` 转换为 `time.time`
Python 中 datetime.datetime 对象的正确 None 或 null 条目是啥?
类型对象“datetime.datetime”没有属性“datetime”
为啥 object dtype 数组包含 datetime.datetime 对象而不是 numpy.datetime64 对象?