Python 如何格式化日期和时间?
我正在尝试为一个后端用python编写的网站创建一个评论部分。到目前为止,一切都很好,只是我不知道如何按照我想要的方式格式化日期和时间 我在发帖时想要的是:Python 如何格式化日期和时间?,python,python-3.x,datetime,strftime,Python,Python 3.x,Datetime,Strftime,我正在尝试为一个后端用python编写的网站创建一个评论部分。到目前为止,一切都很好,只是我不知道如何按照我想要的方式格式化日期和时间 我在发帖时想要的是: 于2018年12月6日星期二-11:20发布 或 于2018年12月6日11:21发布 目前,调用该方法时我得到的是: import time from datetime import * time = ("Posted on " + str(datetime.now().day) + "/" + str(datetime
于2018年12月6日星期二-11:20发布
于2018年12月6日11:21发布
import time
from datetime import *
time = ("Posted on " + str(datetime.now().day) + "/"
+ str(datetime.now().month) + " at: " + str(datetime.now().hour)
+ ":" + str(datetime.now().minute))
您可以使用
datetime.datetime.strftime()
生成所需的任何格式:
import datetime
time = datetime.datetime.now().strftime("Posted on %d/%m/%y at - %H:%M")
print(time) # Posted on 07/12/17 at - 00:29
阅读有关创建日期时可以使用的特殊类的更多信息:请参见,不要忘记,世界各地(即您的受众)的数字日期格式存在着令人困惑的差异。你的例子可能是12月6日或6月12日。始终为月份使用文本名称。@barny:或ISO-8601格式(YYYY-MM-DD),这是明确的。我可能很迂腐,但即使是我也不会争辩2017-12-06不是12月6日@马蒂诺:据我所知,没有文化/地区会让它YYYY-DD-MM。当然,没有什么可以阻止你这样做(除了普通的礼仪),但是YYYY-DD-MM背后没有文化历史,所以这种模棱两可的情况并不象DD/MM/YYYY(欧洲)和MM/DD/YYYY(美国)那样。如果你看########################################?我住在美国,2017年6月12日是6月12日。@barny更严肃地说,如果你想把这个月看作一个词,你可以用
%b
表示Dec
或%b
表示December
。@barny:提醒你,如果你在做互联网演示,你可以让JavaScript来做,然后打电话给.toLocaleString()
在日期
客户端,允许浏览器根据用户的区域设置使用适当的格式。啊,我可以说这是7月12日发布的。或者是吗?@barny-向OP抱怨,他想要一个基于他试图做的事的dd/mm/yy格式。在爱尔兰,这就是我们的格式!另外,我已经尝试过了,但是它产生了一个错误:类型对象“datetime.datetime”没有属性“datetime”@Shadowranger做出了非常相关的评论。不太清楚您的意思,我们正在讨论您如何显示日期,ISO8601无疑是一种相当明确的方式:2017-12-06比2017年6月12日好得多。但可以说,对于英语阅读读者来说,“2017年12月6日”是非常清晰的。但是,如果您要将日期导出到电子表格中,那么ISO是IMO的一种方式。在添加到最佳实践中时,如果您要将其存储在某个地方,则可能需要使用datetime.datetime.utcnow()
而不是datetime.datetime.now()
来获取UTC日期时间。这样,您就可以根据用户的时区调整实际日期。
datetime.datetime.now().strftime('%d/%m/%y at - %H:%M')
'06/12/17 at - 16:29'