如何将python datetime转换为具有可读格式date的字符串?

2024-04-25 05:59:17 发布

您现在位置:Python中文网/ 问答频道 /正文

t = e['updated_parsed']
dt = datetime.datetime(t[0],t[1],t[2],t[3],t[4],t[5],t[6]
print dt
>>>2010-01-28 08:39:49.000003

我怎么把它变成一根绳子?以下内容:

"January 28, 2010"

Tags: datetimedtparsedprintupdated绳子january
3条回答

下面是如何使用python的通用格式化函数来实现相同的功能。。。

>>>from datetime import datetime
>>>"{:%B %d, %Y}".format(datetime.now())

此处使用的格式字符与strftime使用的格式字符相同。不要错过格式说明符中的前导:

在大多数情况下,使用format()而不是strftime()可以使代码更可读、更易于编写并与生成格式化输出的方式保持一致。。。

>>>"{} today's date is: {:%B %d, %Y}".format("Andre", datetime.now())

将以上内容与下面的strftime()选项进行比较。。。

>>>"{} today's date is {}".format("Andre", datetime.now().strftime("%B %d, %Y"))

而且,下面的方法不起作用。。。

>>>datetime.now().strftime("%s %B %d, %Y" % "Andre")
Traceback (most recent call last):
  File "<pyshell#11>", line 1, in <module>
    datetime.now().strftime("%s %B %d, %Y" % "Andre")
TypeError: not enough arguments for format string

等等。。。

在Python 3.6+中使用f字符串

from datetime import datetime

date_string = f'{datetime.now():%Y-%m-%d %H:%M:%S%z}'

datetime类有一个strftime方法。Python文档记录了它接受的不同格式:

对于这个具体的例子,它看起来像:

my_datetime.strftime("%B %d, %Y")

相关问题 更多 >