在编写代码的过程中,常常需要使用时间函数。Python提供了多种对时间的操作方式,其中重要的一种就是格式化时间。本文将从多个方面对Python格式化时间做详细的阐述。
一、时间模块介绍
Python内置的time
模块,提供了用于处理时间的函数。通过time
模块,可以获取当前系统时间、延迟指定时间、计算时间差等操作。Python中的时间是以从1970年1月1日零点整到现在经过的秒数来表示的,称之为Unix时间戳。下面是一个简单的获取当前时间的例子:
import time
now = time.time()
print("当前时间戳为:", now)
输出结果如下:
当前时间戳为: 1633693486.0317848
可以看到,输出的时间戳包含小数部分,表示微秒。
二、strftime格式化时间
strftime
是Python中用来格式化时间的函数,调用该函数可以将时间转换为字符串。strftime
的参数包含通配符,用来指定输出的时间格式。下面是一些常用的通配符:
通配符 | 含义 |
---|---|
%Y |
年份,4位数字 |
%m |
月份,2位数字,带前导零 |
%d |
月份中的第几天,2位数字,带前导零 |
%H |
小时,24小时制,2位数字,带前导零 |
%M |
分钟,2位数字,带前导零 |
%S |
秒数,2位数字,带前导零 |
下面是一个使用strftime 格式化时间的例子: |
import time
# 获取当前时间
now = time.localtime(time.time())
# 格式化输出时间
print(time.strftime("%Y-%m-%d %H:%M:%S", now))
输出结果如下:
2021-10-08 14:31:34
可以看到,格式化后的时间字符串包含了年份、月份、日期、小时、分钟、秒数信息。
三、strptime解析时间
strptime
函数用于将字符串解析成时间结构体。可以通过strptime
将字符串转化为时间类型,进行后续的时间计算和比较。下面是一个使用strptime
解析时间的例子:
import datetime
# 解析时间字符串
date_string = "2021-10-08 14:34:12"
date = datetime.datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")
# 输出解析后的时间
print(date)
输出结果如下:
2021-10-08 14:34:12
通过strptime
函数,将字符串格式的时间转化为datetime
类型,进行后续的时间处理。
四、时间差计算
在实际的应用中,经常需要计算两个时间之间的差值。Python中可以使用timedelta
函数来计算两个时间之间的时间差。下面是一个计算时间差的例子:
import datetime
# 获取两个时间
time1 = datetime.datetime(2021, 10, 8, 14, 40, 0)
time2 = datetime.datetime(2021, 10, 8, 14, 34, 12)
# 计算时间差
diff = time1 - time2
print("时间差为:", diff)
输出结果如下:
时间差为: 0:05:48
通过timedelta
函数,计算出了两个时间之间的时间差,单位为时、分、秒。
总结
本文对Python格式化时间进行了详细的介绍,包括时间模块的介绍、strftime
格式化时间、strptime
解析时间和时间差计算等内容。掌握这些知识对于编写时间相关的代码是非常有帮助的。