如何使用Python的datetime库处理日期和时间 - 10个函数指导
Python的datetime库是一个非常方便的工具,可用于处理日期和时间。在本文中,我们将介绍10个datetime库的常用函数,并提供示例代码来演示其用法。
1. datetime.now()
datetime.now()函数返回当前日期和时间的datetime对象。该函数不带任何参数,它取决于系统时钟。
import datetime now = datetime.datetime.now() print(now)
输出:
2022-03-29 08:30:23.004737
2. datetime.date()
datetime.date()函数返回具有指定年份,月份和日期的日期对象。它接受三个必需的参数–年份,月份和日期。
import datetime date_obj = datetime.date(2022, 3, 29) print(date_obj)
输出:
2022-03-29
3. datetime.time()
datetime.time()函数返回具有指定小时,分钟,秒和微秒的时间对象。它接受四个必需的参数–小时,分钟,秒和微秒。
import datetime time_obj = datetime.time(8, 30, 23, 123456) print(time_obj)
输出:
08:30:23.123456
4. datetime.strptime()
datetime.strptime()函数用于将字符串转换为datetime对象。它接受两个参数–字符串和格式字符串。字符串是待转换的日期时间字符串,格式字符串指定日期时间格式。
import datetime date_str = '2022-03-29' format_str = '%Y-%m-%d' date_obj = datetime.datetime.strptime(date_str, format_str) print(date_obj)
输出:
2022-03-29 00:00:00
5. datetime.strftime()
datetime.strftime()函数用于将datetime对象转换为字符串。它接受两个参数–datetime对象和格式字符串。格式字符串指定日期时间格式。
import datetime now = datetime.datetime.now() format_str = '%Y-%m-%d %H:%M:%S' date_str = now.strftime(format_str) print(date_str)
输出:
2022-03-29 08:30:23
6. datetime.timedelta()
datetime.timedelta()函数用于表示时间间隔,例如,相差多少天,多少小时等。它接受几个可选参数–天,秒,微秒,毫秒和分钟。默认值为零。
import datetime days_away = datetime.timedelta(days=10) now = datetime.datetime.now() ten_days_later = now + days_away print(ten_days_later)
输出:
2022-04-08 08:30:23.757598
7. datetime.replace()
datetime.replace()函数用于更改datetime对象的属性,例如,更改年份或小时。它接受一个或多个可选参数,表示要更改的属性。
import datetime now = datetime.datetime.now() new_year = now.replace(year=2023) new_hour = now.replace(hour=9) print(new_year) print(new_hour)
输出:
2023-03-29 08:30:23.317074
2022-03-29 09:30:23.317074
8. datetime.weekday()
datetime.weekday()函数返回星期几,其中0表示星期一,6表示星期日。
import datetime now = datetime.datetime.now() weekday = now.weekday() print(weekday)
输出:
1
9. datetime.isoweekday()
datetime.isoweekday()函数返回ISO格式的星期几,其中1表示星期一,7表示星期日。
import datetime now = datetime.datetime.now() isoweekday = now.isoweekday() print(isoweekday)
输出:
2
10. datetime.strptime()和strftime() 的时间相关码
datetime.strptime()和strftime()函数用于转换日期时间字符串和datetime对象之间的格式。它们使用具有特定格式的代码来表示日期,时间和时区信息。下面是一些常用的时间相关代码:
- %Y: 四位数年份
- %m: 两位数月份
- %d: 两位数日期
- %H: 24小时制小时数
- %I: 12小时制小时数
- %M: 两位数分钟数
- %S: 两位数秒数
- %f: 微秒(六位数)
- %p: AM或PM
- %z: UTC偏移量
- %Z: 时区名称
- %j: 年份中的天数(001-366)
- %U: 年份中的星期数(00-53,星期天作为一周的 天)
- %W: 年份中的星期数(00-53,星期一作为一周的 天)
以上是datetime库中一些重要的函数以及时间相关码,大家可以根据需求,合理使用。
