Python 日期和时间学习笔记
Python 有一个强大的日期和时间模块,名为 datetime,使得处理日期和时间变得非常容易。本文将介绍 datetime 模块的用法,并且提供相应的实例。
日期和时间格式化
datetime 模块中的 strftime 方法提供了一种简单易用的方式来将日期和时间格式化为字符串。下面是一些常见的日期和时间格式:
格式 | 描述 |
---|---|
%Y | 四位数的年份(例如:2023) |
%m | 月份(01 到 12) |
%d | 月内中的一天(01 到 31) |
%H | 小时(24 小时制,00 到 23) |
%M | 分钟(00 到 59) |
%S | 秒(00 到 59) |
下面是一个示例,演示如何使用 strftime 方法格式化日期和时间:
pythonCopy Codefrom datetime import datetime
now = datetime.now()
print(now.strftime("%Y-%m-%d %H:%M:%S"))
输出:
Copy Code2023-06-03 22:47:10
日期和时间计算
datetime 模块中的 timedelta 类提供了一种简单易用的方式来执行日期和时间的计算。下面是一些常见的 timedelta 对象:
对象 | 描述 |
---|---|
days | 天数 |
seconds | 秒数 |
microseconds | 毫秒数 |
milliseconds | 微秒数 |
minutes | 分钟数 |
hours | 小时数 |
weeks | 周数 |
下面是一个示例,演示如何使用 timedelta 类来计算日期和时间:
pythonCopy Codefrom datetime import datetime, timedelta
now = datetime.now()
one_day_ago = now - timedelta(days=1)
two_days_from_now = now + timedelta(days=2)
print("One day ago was:", one_day_ago.strftime("%Y-%m-%d %H:%M:%S"))
print("Two days from now will be:", two_days_from_now.strftime("%Y-%m-%d %H:%M:%S"))
输出:
Copy CodeOne day ago was: 2023-06-02 22:53:17
Two days from now will be: 2023-06-05 22:53:17
日期和时间解析
datetime 模块中的 strptime 方法提供了一种简单易用的方式来从字符串中解析日期和时间。下面是一些常见的日期和时间格式:
格式 | 描述 |
---|---|
%Y | 四位数的年份(例如:2023) |
%m | 月份(01 到 12) |
%d | 月内中的一天(01 到 31) |
%H | 小时(24 小时制,00 到 23) |
%M | 分钟(00 到 59) |
%S | 秒(00 到 59) |
下面是一个示例,演示如何使用 strptime 方法从字符串中解析日期和时间:
pythonCopy Codefrom datetime import datetime
date_string = "2023-06-03 22:31:30"
date_object = datetime.strptime(date_string, '%Y-%m-%d %H:%M:%S')
print(date_object)
输出:
Copy Code2023-06-03 22:31:30
总结
本文介绍了 Python datetime 模块的用法,并提供了一些示例来演示日期和时间格式化、计算和解析。在日常工作中,Python 的日期和时间处理功能经常被使用,掌握这些技能对于编写高效的 Python 程序非常重要。