Tabla de contenido
Introducción y aplicación de funciones.
2. Propiedades de los objetos de fecha
3. Conversión de hora y marca de tiempo en la clase de fecha:
4. Modifique la fecha usando el método de reemplazo
operaciones de clase de tiempo
datetime: clase de fecha y hora
timedelta: intervalo de tiempo, es decir, el tiempo entre dos puntos de tiempo
Introducción
Hacer funciones en el desarrollo de proyectos a menudo usa operaciones sobre el tiempo. Por ejemplo, tareas programadas para el vencimiento de la membresía y ejecución retrasada de algunos códigos. Los tres módulos de tiempo comúnmente utilizados en python son: módulos de tiempo , calendario y fecha y hora. Hoy es el módulo de fecha y hora.
Hay tres formatos para representar el tiempo en python: marca de tiempo, tupla y tiempo formateado. Similar al módulo de hora, el módulo de fecha y hora también puede convertir el tipo de fecha y hora en estos tres tipos.
Introducción y aplicación de funciones.
fecha: clase de fecha
Atributos comunes: año/mes/día
1. Obtenga la hora actual
import datetime
today = datetime.datetime.today()
today1 = datetime.datetime.now()
resultado:
2. Propiedades de los objetos de fecha
import datetime
# 这两种都可以
today = datetime.datetime.today()
# today1 = datetime.datetime.now()
print("当前日期:", today) # 当前日期
print("当前日期(字符串):", today.ctime()) # 返回日期的字符串
print("时间元组信息:", today.timetuple()) # 当前日期的时间元组信息
print("年:", today.year) # 返回today对象的年份
print("月:", today.month) # 返回today对象的月份
print("日:", today.day) # 返回today对象的日
print("星期:", today.weekday()) # 0代表星期一,类推
print("公历序数:", today.toordinal()) # 返回公历日期的序数
print("年/周数/星期:", today.isocalendar()) # 返回一个元组:一年中的第几周,星期几
resultado:
3. Conversión de hora y marca de tiempo en la clase de fecha:
(1) El número ordinal gregoriano devuelto por el método toordinal se convierte en una fecha
import datetime
today = datetime.datetime.now()
# 此方法的返回类型是一个数字,它是该日期在公历中的序数。
num = today.toordinal()
print(num)
print(today.fromordinal(num))
resultado:
(2) fecha de conversión de la marca de tiempo del módulo de tiempo
import datetime
import time
nowtime = time.time()
print(nowtime)
nowdate = datetime.date.fromtimestamp(nowtime)
print(nowdate)
resultado:
(3) Formatee la hora, el formato se refiere al método strftime en el módulo de hora
import datetime
today = datetime.date.today()
print(today)
print(today.strftime("%Y.%m.%d"))
print(today.strftime("%Y:%m:%d"))
print(today.strftime("%Y.%m.%d %H:%M:%S"))
resultado:
4. Modifique la fecha usando el método de reemplazo
import datetime
# 当前日期
date1 = datetime.date.today()
print(date1)
# 指定日期
date2 = datetime.date(2022, 10, 7)
print(date2)
# 不带参数修改日期
date3 = date2.replace(2022, 10, 8)
print(date3)
# 带参数修改日期
date4 = date2.replace(month=12, day=9)
print(date4)
resultado:
tiempo: clase de tiempo
Atributos comunes: hora/minuto/segundo/microsegundo
La clase de tiempo genera objetos de tiempo, incluidos los atributos de hora, minuto, segundo y microsegundo.
operaciones de clase de tiempo
import datetime
# time对象
print(datetime.time)
# 格式化time
time1 = datetime.time(18, 30, 59, 59)
print(time1)
print(time1.hour)
print(time1.minute)
print(time1.second)
print(time1.microsecond) # 微秒
resultado:
datetime: clase de fecha y hora
La clase de fecha y hora contiene toda la información de la clase de fecha y la clase de hora.
import datetime
print(datetime.datetime.today())
print(datetime.datetime.now())
print(datetime.datetime.utcnow()) # 返回当前UTC日期和时间的datetime对象
print(datetime.datetime.fromtimestamp(1670582201)) # 时间戳的datetime对象
print(datetime.datetime.fromordinal(738498))
print(datetime.datetime.strptime("2020-12-25", "%Y-%m-%d"))
resultado:
timedelta: intervalo de tiempo, es decir, el tiempo entre dos puntos de tiempo
El objeto timedelta representa un periodo de tiempo, es decir, la diferencia entre dos fechas o datetimes; soporta parámetros: semanas, días, horas, minutos, segundos, milisegundos, microsegundos
operación timedelta
import datetime
day = datetime.date.today()
# 当前日期
print(day)
# 增加7天后日期
print(day+datetime.timedelta(days=7))
# 时间操作
now = datetime.datetime.now()
# 当前日期时间
print(now)
# 增加8小时
print(now+datetime.timedelta(hours=8))
# 增加30分钟
print(now+datetime.timedelta(minutes=30))
# 增加30秒钟
print(now+datetime.timedelta(seconds=30))
# 减去一星期
print(now-datetime.timedelta(weeks=1))
resultado:
Este artículo presenta el uso del módulo de fecha y hora. Los amigos que no saben cómo usar el tiempo o no están familiarizados con las operaciones de tiempo pueden consultar el blog del módulo de tiempo ( hora , calendario , fecha y hora) para realizar la conversión con los otros tres formatos de tiempo y la operación con la fecha.