当前位置: 首页>编程语言>正文

Python模块01——datetime

文章目录

    • 概要
    • 基本认识
    • 函数使用

概要

datetime模块是Python中处理日期和时间的模块。它提供了与日期和时间相关的类和函数,方便进行日期和时间的计算和操作。

基本认识

datetime模块中主要的类有:

  • datetime:日期和时间的类,包含年、月、日、时、分、秒等信息。
  • date:日期的类,包含年、月、日等信息。
  • time:时间的类,包含时、分、秒等信息。
  • timedelta:时间间隔的类,用于表示两个日期或时间的差值。

datetime模块中常用的函数有:

  • datetime.now():返回当前日期和时间。
  • datetime.strptime(date_string, format):将字符串按照指定的格式转换为datetime对象。
  • datetime.strftime(format):将datetime对象按照指定的格式转换为字符串。
  • date.today():返回今天的日期。
  • timedelta(days, seconds, microseconds, milliseconds, minutes, hours, weeks):创建一个指定时间间隔的timedelta对象。

格式化的格式

  • %Y:四位数的年份(例如:2022)
  • %m:两位数的月份(01-12)
  • %d:两位数的日期(01-31)
  • %H:24小时制的小时数(00-23)
  • %M:分钟数(00-59)
  • %S:秒数(00-59)
  • %A:完整的星期几名称(例如:Monday)
  • %B:完整的月份名称(例如:January)
  • %c:日期和时间的本地表示(例如:Fri Nov 11 10:30:45 2022)
  • %x:本地日期的字符串表示(例如:11/11/22)
  • %X:本地时间的字符串表示(例如:10:30:45)

函数使用

  1. 获取当前时间
now = datetime.datetime.now()  # 当前时间: 2024-02-29 17:15:44.189344
print("当前时间:", now)
  1. 获取当前日期
today = datetime.date.today()  # 当前日期: 2024-02-29
print("当前日期:", today)
  1. 格式化时间日期为字符串
formatted = now.strftime('%Y-%m-%d %H:%M:%S')  # 格式化后的时间: 2024-02-29 17:15:44
print("格式化后的时间:", formatted)
  1. 将字符串转化为日期时间对象
date_string = '2022-01-01'
date = datetime.datetime.strptime(date_string, '%Y-%m-%d')
print("转换后的日期:", date)  # 转换后的日期: 2022-01-01 00:00:00
  1. datetime.strftime的用法
import datetime

# 创建一个日期时间对象
dt = datetime.datetime(2022, 11, 11, 10, 30, 45)

# 格式化为字符串
formatted = dt.strftime('%Y-%m-%d %H:%M:%S')
print(formatted)  # 输出:2022-11-11 10:30:45

# 使用其他格式化指令
formatted = dt.strftime('%A, %B %d, %Y')
print(formatted)  # 输出:Friday, November 11, 2022

formatted = dt.strftime('%c')
print(formatted)  # 输出:Fri Nov 11 10:30:45 2022
  1. datetime.timedelta函数
    是一个表示日期或时间之间的持续时间或差异的类。它可用于对日期和时间对象进行算术运算。
import datetime

# 创建一个表示7天的timedelta对象
one_week = datetime.timedelta(days=7)

# 创建一个表示2小时的timedelta对象
two_hours = datetime.timedelta(hours=2)

# 对timedelta对象进行算术运算
total_duration = one_week + two_hours
print(total_duration)  # 输出:7 days, 2:00:00

# 可以访问timedelta对象的各个组成部分
print(total_duration.days)  # 输出:7
print(total_duration.seconds)  # 输出:7200

# 也可以从日期或时间对象中减去一个timedelta
now = datetime.datetime.now()
one_hour_ago = now - datetime.timedelta(hours=1)
print(one_hour_ago)  # 输出:当前日期和时间减去1小时

https://www.xamrdz.com/lan/5q81849077.html

相关文章: