Python中的时间和日期函数的应用
Python作为一门流行的编程语言,提供了丰富的时间和日期函数,来帮助我们轻松地完成常见的时间和日期计算与处理,极大地方便了我们编写和优化程序的过程。
Python中的时间和日期函数主要包括以下两种常见的时间表示方式:
1. 时间戳
时间戳是指自1970年1月1日 00:00:00 UTC到当前时间的秒数,是一种基于绝对时间的表示方式。Python提供了time模块来进行时间戳的处理,我们可以通过时间戳函数将时间戳转换为时间格式,或者将时间格式转为时间戳,具体函数如下:
· time.time():获取当前时间的时间戳。
· time.localtime(seconds):将时间戳转换为本地时间,seconds参数可选,如果未传递则默认为当前时间戳。
· time.gmtime(seconds):将时间戳转换为UTC世界标准时间。
· time.mktime(t):将本地时间格式转换为时间戳,t为struct_time格式,具体用法详见下文。
2. 时间格式化字符串
时间格式化字符串是一种将时间转换为指定字符串格式的方式,与时间戳不同,它是基于人类认知的时间单位进行表示的。Python提供了datetime模块来实现时间格式化字符串的处理,其中包含:
· datetime.datetime.now():返回当前时间。
· datetime.datetime.strftime(format):将时间格式化为指定格式的字符串。
· datetime.datetime.strptime(date_string, format):将指定字符串按照指定格式化形式解析为时间。
除了以上两种时间表示方式外,Python还提供了calendar模块来处理日历相关的操作,例如查看某一年、月份的日历、计算两个日期之间的日期差、计算某月的总天数等等。下面为大家准备了一些常见的Python时间和日期操作示例。
1. 获取当前日期和时间
import datetime
now = datetime.datetime.now()
print("当前时间:%s" % now)
2. 获取当前时间戳
import time
print("当前时间戳为:%s" % time.time())
3. 时间戳转换为格式化时间
import time
local_time = time.localtime(time.time())
print("格式化时间为:%s" % time.strftime("%Y-%m-%d %H:%M:%S", local_time))
4. 格式化时间字符串转换为时间戳
import time
t_str = "2018-01-01 12:12:12"
t_obj = time.strptime(t_str, "%Y-%m-%d %H:%M:%S")
print("时间戳为:%s" % time.mktime(t_obj))
5. 计算两个日期之间的差值
import datetime
date1 = datetime.datetime(2019, 10, 1)
date2 = datetime.datetime(2019, 11, 1)
delta = date2 - date1
print("日期差为:%s" % delta.days)
6. 判断是否是闰年
import calendar
year = 2020
is_leap = calendar.isleap(year)
print("{}是闰年吗? {}".format(year, is_leap))
7. 计算一个月的总天数
import calendar
year = 2020
month = 2
days = calendar.monthrange(year, month)[1]
print("{}年{}月的总天数为{}".format(year, month, days))
综上,Python提供了丰富的时间和日期函数,我们可以根据自己的需求来选择使用哪种。在实际开发中,时间和日期处理是不可避免的,我们要熟练掌握相关的操作,来提高我们的编码效率和程序性能。
