首页 > 后端开发 > Python教程 > 如何在 Python 中不使用 `repr()` 表示形式打印列表中的日期?

如何在 Python 中不使用 `repr()` 表示形式打印列表中的日期?

Barbara Streisand
发布: 2024-12-30 15:54:10
原创
981 人浏览过

How to Print Dates in Lists Without the `repr()` Representation in Python?

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

从示例代码中可以看出,使用 print 打印单个日期对象会返回所需的常规格式,例如“2008-11-22”。但是,当打印包含日期对象的列表时,结果变为“[datetime.date(2008, 11, 22)]”。这是由于 Python 中日期的独特特征所致。

理解日期对象和表示形式

Python 中的日期是拥有两种不同字符串表示形式的对象:

  • 正则表示 (str()): 用于人类可读性,强调将日期显示为常规字符串。例如,str(datetime.datetime(2008, 11, 22)) 返回 '2008-11-22'。
  • 替代表示 (repr()): 专注于表示对象的数据性质。 repr(datetime.datetime(2008, 11, 22)) 返回 'datetime.datetime(2008, 11, 22)'。

打印包含日期对象的列表时

打印包含日期对象的列表时,必须打印日期对象本身,而不是比列表容器。这允许 Python 使用常规字符串表示形式 (str()) 并消除替代表示形式 (repr())。

使用给定代码的实际应用

中提供的代码,稍微修改一下就可以打印列表中的日期正确:

import datetime
mylist = [datetime.date.today()]

# Print each date object individually, not the list
for date in mylist:
    print(date)
登录后复制

使用 strftime() 进行高级日期格式化

此外,您可以使用 strftime() 方法自定义日期格式。通过传递字符串模式,您可以指定日期的格式。例如,today.strftime('We are the %d, %b %Y') 打印 'We are the 22, Nov 2008'。

格式化字符串文字(自 Python 3.6 起)

自从引入格式化字符串文字以来,您可以使用与直接在 f 字符串中使用“strftime()”。例如,f"{datetime.datetime.now():'%Y-%m-%d'} 打印“2023-03-08”。

以上是如何在 Python 中不使用 `repr()` 表示形式打印列表中的日期?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板