在Python中,日期和时间相关的函数和类被封装在datetime模块中。可以使用该模块中的函数和类来处理日期和时间相关的 *** 作。下面是一些常用的日期函数:
datetimedatetime(year, month, day, hour=0, minute=0, second=0, microsecond=0, tzinfo=None):创建一个datetime对象,表示指定的日期和时间。year、month和day参数是必需的,表示日期;hour、minute、second和microsecond参数是可选的,表示时间;tzinfo参数是可选的,表示时区信息。
datetimedate(year, month, day):创建一个date对象,表示指定的日期。year、month和day参数是必需的,表示日期。
datetimetime(hour=0, minute=0, second=0, microsecond=0, tzinfo=None):创建一个time对象,表示指定的时间。hour、minute、second和microsecond参数是可选的,表示时间;tzinfo参数是可选的,表示时区信息。
datetimedatetimenow(tz=None):返回一个datetime对象,表示当前日期和时间。tz参数是可选的,表示时区信息。
datetimedatetoday():返回一个date对象,表示当前日期。
这些函数可以用来创建、获取日期和时间对象,并进行各种日期和时间的 *** 作。例如,可以使用datetimedatetimenow()函数获取当前日期和时间,然后使用strftime()函数将其格式化为字符串输出。
时间戳可简单理解为自1970/01/01/ 00:00:00 到现在经过的秒数,如果要计算日期运算,因为涉及到润年,一般使用语言自带的库实现比较简单和高效。但如果只是取时间即时分秒,完全可以不用依赖库,通过模运算和取整运算的方式实现,并且性能比内部库函数效率更高。
运行结果,100万次
1000万次
性能快了接近200%,如果有涉及到大数据分析场景,百万甚至千万级别次的调用时,该算法还是有意义的
这需求折腾了我半天
import time
import datetime as datetime
def late_time(time2):
# 先获得时间数组格式的日期
#time2是外部传入的任意日期
now_time = datetimedatetimestrptime(time2, '%Y-%m-%d')
#如需求是当前时间则去掉函数参数改写 为datetimedatetimenow()
threeDayAgo = (now_time - datetimetimedelta(days =30))
# 转换为时间戳
timeStamp =int(timemktime(threeDayAgotimetuple()))
# 转换为其他字符串格式
otherStyleTime = threeDayAgostrftime("%Y-%m-%d")
return otherStyleTime
a = late_time("2019-3-30")
print(a)# 打印2018-02-28
以上就是关于python如何定义日期函数全部的内容,包括:python如何定义日期函数、python根据时间戳获取时分秒、Python获取当前时间前、后一个月的函数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)