1.fecha de Python
Las fechas en Python no son su propio tipo de datos, pero podemos importar datetime
el módulo nombrado para tratar las fechas como objetos de fecha.
1.1 Importe el módulo de fecha y hora y muestre la fecha actual:
import datetime
#导入 datetime 模块并显示当前日期:
x = datetime.datetime.now()
print(x)
#输出:2023-08-03 17:03:07.766958
1.2 Devolver información sobre objetos de fecha, como año, mes, día, etc.
#年,月,日
x = datetime.datetime.now()
print(x.year, x.month, x.day)
#输出:2023 8 3
1.3 Crear objeto de fecha
Para crear una fecha, podemos usar datetime()
la clase (constructor) del módulo de fecha y hora.
datetime()
La clase requiere tres parámetros para crear una fecha: año, mes y día.
#创建日期对象
x = datetime.datetime(2020, 5, 17)
print(x)
#输出:2020-05-17 00:00:00
#datetime() 类还接受时间和时区(小时、分钟、秒、微秒、tzone)的参数
x = datetime.datetime(2020, 5, 17, 12, 12, 12)
print(x)
#输出:2020-05-17 12:12:12
1.4 Formatear fecha
datetime
El objeto tiene métodos para formatear objetos de fecha en cadenas legibles.
Se llama al método strftime()
y toma un format
parámetro para especificar el formato de la cadena devuelta:
# 格式化输出日期
d = datetime.date(2023, 5, 1)
print(d.strftime('%Y-%m-%d'))
#输出:2023-05-01
# 格式化输出时间
t = datetime.time(12, 30, 45)
print(t.strftime('%H:%M:%S'))
#输出:12:30:45
# 格式化输出datetime对象
dt = datetime.datetime(2023, 5, 1, 12, 30, 45)
print(dt.strftime('%Y-%m-%d %H:%M:%S'))
#输出:2023-05-01 12:30:45
Además de la función strftime(), también podemos usar la función strptime() para convertir cadenas en objetos de fecha y hora. Los parámetros de la función strptime() son una cadena y una cadena de formato, que puede analizar la cadena en los objetos de fecha y hora correspondientes. Aquí hay un código de ejemplo que convierte una cadena en un objeto de fecha:
# 将字符串解析成date对象
s = '2023-05-01'
d = datetime.datetime.strptime(s, '%Y-%m-%d').date()
print(d)
#输出:2023-05-01
Referencia para todos los códigos de formato legal:
1.4 Operaciones de fecha y hora
1.4.1 Obtener la fecha dos días después
#获取两天后的日期
# 获取当前日期
today = datetime.date.today()
# 打印当前日期
print("今天是:", today)
# 获取两天后的日期
delta = datetime.timedelta(days=2)
newDate = today + delta
# 打印两天后的日期
print("两天后是:", newDate)
#输出:两天后是: 2023-08-05
1.4.2 Calcular la diferencia en días entre dos fechas
# 计算两个日期之间的天数差
d1 = datetime.date(2023, 5, 1)
d2 = datetime.date(2023, 5, 10)
delta = d2 - d1
print(delta.days)
#输出:9
1.4.3 Calcular la diferencia en segundos entre dos tiempos
# 计算两个时间之间的秒数差
t1 = datetime.time(12, 30, 45)
t2 = datetime.time(13, 30, 45)
delta = datetime.datetime.combine(datetime.date.today(), t2) - datetime.datetime.combine(datetime.date.today(), t1)
print(delta.seconds)
#输出:3600