如何在 Python 中以常规格式打印日期?


如果您直接使用 print 函数打印日期,您将获得常规日期,

示例

import datetime
today = datetime.date.today()
print(today)

输出

您将获得以下输出:

2018-1-2

这正是您想要的。但是当您将其追加到列表中然后尝试打印它时,

示例

import datetime
my_list = []
today = datetime.date.today()
my_list.append(today)
print(my_list)

输出

您将获得以下输出:

[datetime.date(2018, 1, 2)]

发生这种情况是因为日期时间是对象。因此,当您操作它们时,您操作的是对象,而不是字符串、时间戳或任何其他东西。Python 中的任何对象都有两种字符串表示形式。 “print” 使用的常规表示形式可以通过 str() 函数获取。这一个是在该对象的类的 __str__ 函数中实现的。用于表示对象性质(作为数据)的替代表示形式。它可以通过 repr() 函数获取。

因此,为了获得正确的表示形式,您需要在日期时间对象上显式调用 str。

示例

import datetime
my_list = []
today = datetime.date.today()
my_list.append(str(today))
print(my_list)

输出

您将获得以下输出:

['2018-01-02']

更新于:2020年6月12日

1K+ 浏览量

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告