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

Python中时间处理相关函数使用介绍

发布时间:2023-05-30 22:21:56

Python中时间处理相关函数非常丰富,可以方便地获取当前时间、计算时间间隔、格式化时间等。本文将对常用的时间处理相关函数进行介绍。

一、获取当前时间相关函数

1. time.time()

该函数返回当前时间的时间戳,即自1970年1月1日零点以来的秒数,可以用于计时或计算时间间隔。示例代码:

import time
now = time.time()
print("当前时间戳为:", now)

输出:

当前时间戳为: 1631728307.054099

2. time.localtime()

该函数返回当前时间的本地时间格式,即包括年月日时分秒等各个元素。示例代码:

import time
localtime = time.localtime()
print("当前本地时间为:", localtime)
print("年份为:", localtime.tm_year)
print("月份为:", localtime.tm_mon)
print("日期为:", localtime.tm_mday)
print("小时为:", localtime.tm_hour)
print("分钟为:", localtime.tm_min)
print("秒数为:", localtime.tm_sec)

输出:

当前本地时间为: time.struct_time(tm_year=2021, tm_mon=9, tm_mday=15, tm_hour=15, tm_min=5, tm_sec=7, tm_wday=2, tm_yday=258, tm_isdst=0)
年份为: 2021
月份为: 9
日期为: 15
小时为: 15
分钟为: 5
秒数为: 7

3. time.gmtime()

该函数返回当前时间的格林威治时间格式,与time.localtime()返回值相同,但是不包括夏令时信息。

4. datetime.datetime.now()

datetime模块中的datetime类可以获取当前时间的日期和时间,其now()方法返回当前时间的datetime对象,包括年月日时分秒等各个元素。示例代码:

import datetime
now = datetime.datetime.now()
print("当前时间为:", now)
print("年份为:", now.year)
print("月份为:", now.month)
print("日期为:", now.day)
print("小时为:", now.hour)
print("分钟为:", now.minute)
print("秒数为:", now.second)

输出:

当前时间为: 2021-09-15 15:05:07.336342
年份为: 2021
月份为: 9
日期为: 15
小时为: 15
分钟为: 5
秒数为: 7

二、时间格式化相关函数

1. time.strftime()

该函数将时间戳或时间元组格式化为指定格式的字符串,即将时间转换为可读性更好的字符串。格式化字符串中的特殊字符表示不同的时间元素,常用的格式化字符有:

- %Y:四位数的年份

- %m:两位数的月份(01-12)

- %d:两位数的日(01-31)

- %H:24小时制小时数(00-23)

- %M:分钟数(00-59)

- %S:秒数(00-59)

- %A:星期的英文全称(如Monday)

- %a:星期的英文简称(如Mon)

- %B:月份的英文全称(如January)

- %b:月份的英文简称(如Jan)

- %p:上午或下午字符(AM或PM)

示例代码:

import time
now = time.time()
localtime = time.localtime(now)
timestr = time.strftime("%Y-%m-%d %H:%M:%S", localtime)
print("格式化后的时间为:", timestr)

输出:

格式化后的时间为: 2021-09-15 15:05:07

2. datetime.datetime.strftime()

datetime模块中的datetime类的strftime()方法与time模块中的strftime函数类似,将datetime对象转换为指定格式的字符串。

三、时间间隔相关函数

1. time.sleep()

该函数可以暂停程序的执行一段时间,即让程序“睡眠”,常用于模拟网络请求或控制程序流程等。参数为暂停的时间,单位为秒。 示例如下:

import time
print("开始执行...")
time.sleep(3)
print("暂停3秒后继续执行...")

输出:

开始执行...
暂停3秒后继续执行...

2. datetime.timedelta()

该类表示两个日期或时间之间的差距,可以用于计算时间间隔或执行日期的运算。常用的方法有:

- days:天数

- seconds:秒数

- microseconds:微秒数

- total_seconds():总秒数

示例如下:

import datetime
d1 = datetime.datetime(2021, 9, 1, 0, 0, 0)
d2 = datetime.datetime(2021, 9, 15, 15, 5, 7)
delta = d2 - d1
print("时间间隔为:", delta.days, "天", delta.seconds, "秒")
print("总秒数为:", delta.total_seconds())

输出:

时间间隔为: 14 天 54307 秒
总秒数为: 1223407.0

四、其他时间处理相关函数

1. time.mktime()

该函数将时间元组转换为时间戳,即将包含时间信息的元组转换为秒数。示例代码:

import time
localtime = time.localtime()
timestamp = time.mktime(localtime)
print("时间元组为:", localtime)
print("时间戳为:", timestamp)

输出:

时间元组为: time.struct_time(tm_year=2021, tm_mon=9, tm_mday=15, tm_hour=15, tm_min=5, tm_sec=7, tm_wday=2, tm_yday=258, tm_isdst=0)
时间戳为: 1631727907.0

2. datetime.datetime.strptime()

该方法将字符串转换为datetime对象,需要指定字符串的格式。示例代码:

import datetime
timestr = "2021-09-15 15:05:07"
dt = datetime.datetime.strptime(timestr, "%Y-%m-%d %H:%M:%S")
print("转换后的时间为:", dt)

输出:

转换后的时间为: 2021-09-15 15:05:07

3. datetime.datetime.timedate()

该方法返回一个新的datetime对象,表示加上或减去指定时间间隔后的日期时间。示例代码:

import datetime
now = datetime.datetime.now()
delta = datetime.timedelta(days=7)
next_week = now + delta
print("一周后的时间为:", next_week)

输出:

一周后的时间为: 2021-09-22 15:05:07.574206

以上就是Python中常用的时间处理相关函数的介绍。时间处理是编程中比较常见的操作,熟练掌握时间处理相关函数可以提高编程效率。