欢迎访问宙启技术站
智能推送

时间模块中的常用函数

发布时间:2023-06-24 14:32:36

Python中的时间模块(datetime)提供了许多有用的函数和类,可以在Python程序中处理日期、时间和时间差。使用datetime模块,可以将有关日期、时间和时间差的处理封装成对象,这使得对时间操作更加方便和易于理解。本文将介绍如下常用函数。

1. datetime.now()

datetime.now()函数返回当前日期和时间的datetime对象。使用该函数可以方便地获取当前日期和时间。示例代码如下:

from datetime import datetime

now = datetime.now()
print(now)

输出结果如下:

2021-11-11 14:11:20.931029

2. datetime.strptime()

datetime.strptime()函数可以将字符串转换为datetime对象。该函数接收两个参数, 个参数是要转换的字符串,第二个参数是指定字符串解析格式的字符串。解析格式可以通过百度或查看Python官方文档来查询。示例代码如下:

from datetime import datetime

date_time_str = '2021-11-11 14:11:00'
date_time_obj = datetime.strptime(date_time_str, '%Y-%m-%d %H:%M:%S')

print(date_time_obj)

输出结果如下:

2021-11-11 14:11:00

3. datetime.strftime()

datetime.strftime()函数是将datetime对象格式化为字符串的函数。它接收一个字符串参数,可以指定输出字符串的格式。参考文档:https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior 示例代码如下:

from datetime import datetime

now = datetime.now()

print('当前时间为:', now)
print('格式化后的时间为:', now.strftime('%Y-%m-%d %H:%M:%S'))

输出结果如下:

当前时间为: 2021-11-11 14:11:31.039635
格式化后的时间为: 2021-11-11 14:11:31

4. datetime.date()

datetime.date()函数返回一个表示现实日期的date(年、月、日)对象。它从datetime对象中提取日期部分。示例代码如下:

from datetime import datetime

now = datetime.now()

print('日期为:', now.date())

输出结果如下:

日期为: 2021-11-11

5. datetime.time()

datetime.time()函数返回一个表示现实时间的time(小时、分钟、秒)对象。它从datetime对象中提取时间部分。示例代码如下:

from datetime import datetime

now = datetime.now()

print('时间为:', now.time())

输出结果如下:

时间为: 14:11:52.949709

6. datetime.replace()

datetime.replace()函数可以替换datetime对象中的日期或时间部分,并返回一个新的datetime对象。该函数接收一个或多个替换参数,分别替换年、月、日、小时、分钟、秒、微秒。示例代码如下:

from datetime import datetime

now = datetime.now()

new_date = now.replace(year=2022, month=1, day=1)
print('替换后的日期为:', new_date)

new_time = now.replace(hour=0, minute=0, second=0, microsecond=0)
print('替换后的时间为:', new_time)

输出结果如下:

替换后的日期为: 2022-01-01 14:11:52.949709
替换后的时间为: 2021-11-11 00:00:00

7. datetime.timedelta()

datetime.timedelta()函数可以表示两个日期或时间之间的差异。这个差异可以被转换为天、秒、等。示例代码如下:

from datetime import datetime, timedelta

now = datetime.now()
future = now + timedelta(days=7)

print('一周之后的时间是:', future)
print('一周后与当前的时间差是:', future - now)
print('时间差转换为天数:', (future - now).days)

输出结果如下:

一周之后的时间是: 2021-11-18 14:11:52.949709
一周后与当前的时间差是: 7 days, 0:00:00
时间差转换为天数: 7

8. time.sleep()

time.sleep()函数可以暂停程序的执行,指定暂停的时间,以秒为单位。示例代码如下:

import time

print('1')
time.sleep(1)
print('2')

输出结果如下:

1
2