Python 日期格式化
日期是我们日常生活中经常会遇到的一个概念,而在编程中处理日期也是一项常见的任务。Python 提供了各种方式来处理日期和时间,包括格式化日期。在这篇文章中,我们将详细介绍如何在 Python 中对日期进行格式化,以及一些常见的日期格式化操作。
日期时间模块
在 Python 中,日期和时间的处理主要通过 datetime
模块来实现。datetime
模块中包含了多个类,用于处理日期和时间的各种操作。在使用 datetime
模块之前,我们需要先导入它:
import datetime
获取当前日期时间
在很多情况下,我们需要获取当前的日期和时间。使用 datetime
模块的 datetime
类可以轻松地获取当前日期时间:
current_datetime = datetime.datetime.now()
print(current_datetime)
运行上面的代码,将打印出当前的日期时间,格式为 年-月-日 时:分:秒.微秒
,例如:
2021-08-25 17:30:15.123456
日期格式化
在实际应用中,我们经常需要将日期时间按照特定的格式显示,这就需要对日期进行格式化操作。在 Python 中,可以使用 strftime()
方法对日期进行格式化,strftime()
方法接受一个格式化字符串作为参数,根据该格式化字符串来格式化日期。下面是一些常用的日期格式化符号:
%Y
:4 位数的年份%m
:月份(01-12)%d
:日期(01-31)%H
:小时(00-23)%M
:分钟(00-59)%S
:秒(00-59)
下面是一个示例,将当前日期时间格式化为 年-月-日 时:分:秒
的形式:
formatted_datetime = current_datetime.strftime('%Y-%m-%d %H:%M:%S')
print(formatted_datetime)
运行上面的代码,将打印出格式化后的日期时间,例如:
2021-08-25 17:30:15
自定义日期格式化
除了上面介绍的常用格式化符号外,strftime()
方法还支持使用其他字符来进行自定义日期格式化。比如,如果想要以 年-月-日 时:分:秒
的形式显示日期时间,同时显示中文的年、月、日、时、分、秒,可以使用如下格式化字符串:
formatted_datetime_custom = current_datetime.strftime('%Y年%m月%d日 %H时%M分%S秒')
print(formatted_datetime_custom)
运行上面的代码,将以中文形式打印出自定义格式化后的日期时间,例如:
2021年08月25日 17时30分15秒
时间戳转换为日期时间
有时候我们会遇到时间戳(Unix 时间戳,即从 1970 年 1 月 1 日开始经过的秒数),需要将其转换为日期时间。可以使用 datetime
模块的 fromtimestamp()
方法将时间戳转换为日期时间:
timestamp = 1629889815
datetime_from_timestamp = datetime.datetime.fromtimestamp(timestamp)
print(datetime_from_timestamp)
运行上面的代码,将打印出时间戳对应的日期时间,例如:
2021-08-25 17:30:15
日期时间字符串转换为日期时间对象
有时候我们会从外部数据源(比如文件、数据库)中读取日期时间字符串,需要将其转换为日期时间对象。可以使用 datetime
模块的 strptime()
方法将日期时间字符串转换为日期时间对象,需要提供日期时间字符串和对应的格式化字符串:
datetime_str = '2021-08-25 17:30:15'
datetime_obj = datetime.datetime.strptime(datetime_str, '%Y-%m-%d %H:%M:%S')
print(datetime_obj)
运行上面的代码,将打印出转换后的日期时间对象,例如:
2021-08-25 17:30:15
总结
本文介绍了如何在 Python 中对日期进行格式化操作,包括获取当前日期时间、日期格式化、自定义日期格式化、时间戳转换为日期时间、日期时间字符串转换为日期时间对象等内容。掌握这些技巧可以更方便地处理日期时间相关的操作,提高编程效率。