Python:
将日期转换为字符串
如何做:
Python 使得将日期转换为字符串变得简单。使用date对象上可用的strftime
方法。方法如下:
from datetime import datetime
# 获取当前的日期和时间
now = datetime.now()
# 将其转换为字符串格式:月 日, 年
date_string = now.strftime("%B %d, %Y")
print(date_string) # 输出:March 29, 2023(或当前日期)
# 格式:YYYY-MM-DD
iso_date_string = now.strftime("%Y-%m-%d")
print(iso_date_string) # 输出:2023-03-29(或当前日期)
我是如何做的
这是我获取带有时区信息的ISO 8601格式日期的方式:
def datestamp() -> str:
"""
带有时区的当前日期和时间,以ISO格式表示。
"""
return datetime.now().astimezone().isoformat()
示例输出:
>>> datestamp()
'2024-04-04T01:50:04.169159-06:00'
深入探讨
从历史上看,日期-字符串转换一直是编程中的一个基本需求,因为需要以人类可读的格式表示日期。
strftime
的替代方法包括使用ISO 8601格式的isoformat
方法,或使用如arrow
和dateutil
这样的第三方库,它们提供了更灵活的解析和格式化选项。
在实现上,strftime
代表“字符串格式时间”,它源于C语言编程。Python的strftime
解释了像%Y
表示年份、%m
表示月份等格式代码,允许几乎无限的自定义性。
另请参阅
要深入了解Python的日期和时间功能:
- Python官方的
datetime
文档:https://docs.python.org/3/library/datetime.html - 对于那些对
strftime
指令感兴趣的完整列表:https://strftime.org/ - 探索第三方日期/时间库:
- Arrow:https://arrow.readthedocs.io/en/latest/
- python-dateutil:https://dateutil.readthedocs.io/en/stable/