实用的Python日期时间处理函数
随着计算机应用的广泛普及,日期和时间处理成为我们经常用到的功能之一。在Python中,也提供了大量的函数和模块来处理日期和时间。下面是一些实用的Python日期时间处理函数和模块。
datetime 模块
datetime 模块是Python标准库中非常常用的日期和时间处理模块。它提供了多个类来处理日期和时间。其中比较常用的类为 datetime、date 和 time。
- datetime 类
datetime 类是处理日期和时间的主要类,它包含了日期和时间的信息,例如年、月、日、时、分、秒、微秒等。
1.创建 datetime 对象:
我们可以使用 datetime 类来创建一个 datetime 对象,下面是代码示例:
import datetime # 获取当前日期和时间 now = datetime.datetime.now() print(now)
输出结果为:
2021-08-04 16:19:36.046882
2.获取日期和时间中的各个部分:
使用 datetime 对象可以轻松地获取日期和时间中的各个部分:
import datetime now = datetime.datetime.now() # 获取年份 year = now.year print(year) # 获取月份 month = now.month print(month) # 获取日期 day = now.day print(day) # 获取小时 hour = now.hour print(hour) # 获取分钟 minute = now.minute print(minute) # 获取秒钟 second = now.second print(second) # 获取毫秒 microsecond = now.microsecond print(microsecond)
输出结果为:
2021 8 4 16 19 36 46882
- date 类
date 类是一个只包含日期的类,它可以用来进行日期的计算和操作。
1.创建 date 对象:
使用 date 类可以创建一个只包含日期的对象,下面是代码示例:
import datetime # 获取当前日期 today = datetime.date.today() print(today)
输出结果为:
2021-08-04
2.获取日期中的各个部分:
使用 date 对象可以轻松获取日期中的各个部分:
import datetime today = datetime.date.today() # 获取年份 year = today.year print(year) # 获取月份 month = today.month print(month) # 获取日期 day = today.day print(day)
输出结果为:
2021 8 4
- time 类
time 类是一个只包含时间的类,它可以用来进行时间的计算和操作。
1.创建 time 对象:
使用 time 类可以创建一个只包含时间的对象,下面是代码示例:
import datetime # 获取当前时间 now = datetime.datetime.now() current_time = now.time() print(current_time)
输出结果为:
16:19:36.046882
2.获取时间中的各个部分:
我们可以使用 time 对象来获取时间中的各个部分:
import datetime now = datetime.datetime.now() current_time = now.time() # 获取小时 hour = current_time.hour print(hour) # 获取分钟 minute = current_time.minute print(minute) # 获取秒钟 second = current_time.second print(second) # 获取毫秒 microsecond = current_time.microsecond print(microsecond)
输出结果为:
16 19 36 46882
time 模块
time 模块是Python标准库中处理时间的一个模块,它提供了很多有用的函数。下面介绍一些常用的函数。
- time.time()
time() 函数返回当前的时间戳(1970年1月1日午夜以来的秒数)。它可以用来计算程序的运行时间。
import time
start_time = time.time()
# 运行程序
for i in range(1000000):
pass
end_time = time.time()
run_time = end_time - start_time
print("程序运行时间:", run_time)
输出结果为:
程序运行时间: 0.026747465133666992
- time.sleep()
sleep() 函数可以让程序暂停指定秒数。它可以被用来模拟读取文件、网络请求等耗时操作。
import time
print("程序开始执行...")
time.sleep(5)
print("程序执行完毕!")
程序将暂停5秒钟后输出“程序执行完毕!”。
- time.strftime()
strftime() 函数可以将时间格式化为指定的字符串。
import time
current_time = time.localtime()
time_str = time.strftime("%Y-%m-%d %H:%M:%S", current_time)
print(time_str)
输出结果为:
2021-08-04 16:19:36
- time.strptime()
strptime() 函数可以将指定格式的字符串解析成时间对象。
import time time_str = "2021-08-04 16:22:30" format_str = "%Y-%m-%d %H:%M:%S" time_obj = time.strptime(time_str, format_str) print(time_obj)
输出结果为:
time.struct_time(tm_year=2021, tm_mon=8, tm_mday=4, tm_hour=16, tm_min=22, tm_sec=30, tm_wday=2, tm_yday=216, tm_isdst=-1)
datetime.timedelta 类
timedelta 类是 datetime 模块中的一个类,它表示两个日期或者时间之间的时差。下面介绍一些 timedelta 类的使用方法。
1.创建 timedelta 对象:
我们可以使用 timedelta 类来创建一个时间差对象。
import datetime # 创建一个时间差对象 time_delta = datetime.timedelta(days=2, hours=3, minutes=15) print(time_delta)
输出结果为:
2 days, 3:15:00
2.时间差的加减法:
我们可以使用 timedelta 类的加减法来对时间差进行计算。
import datetime
# 创建两个 datetime 对象
now = datetime.datetime.now()
future_time = now + datetime.timedelta(days=3, hours=2)
print("现在时间:", now)
print("未来时间:", future_time)
time_delta = future_time - now
print("时间差:", time_delta)
输出结果为:
现在时间: 2021-08-04 16:19:36.066882 未来时间: 2021-08-07 18:19:36.066882 时间差: 3 days, 2:00:00
3.时间差的比较:
我们可以使用 timedelta 类的比较运算符来比较两个时间差的大小。
import datetime
delta1 = datetime.timedelta(days=1)
delta2 = datetime.timedelta(hours=24)
if delta1 == delta2:
print("相等")
elif delta1 > delta2:
print("delta1 大于 delta2")
else:
print("delta1 小于 delta2")
输出结果为:“相等”。
总结
Python 提供了很多内置函数和模块来处理日期和时间。要熟练掌握这些函数和模块,需要多加练习。掌握这些函数和模块后,我们就可以轻松地进行日期和时间计算、格式化、转换等操作。
