python的time&datetime模块
admin
2023-07-17 21:23:54
0

python版本:2.7
官方文档地址:
time:https://docs.python.org/2.7/library/time.html
datetime:https://docs.python.org/2/library/datetime.html

time模块

1、获取当前时间

时间戳:time.time()
    输出:1708066786.208922

# 将时间戳转换为时间数组
localtime = time.localtime(time.time())
输出:time.struct_time(tm_year=2018, tm_mon=10, tm_mday=30, tm_hour=9, tm_min=42, tm_sec=20, tm_wday=4, tm_yday=227, tm_isdst=0)

格式化时间显示:time.strftime('%Y-%m-%d %H:%M:%S', localtime)
输出:'2018-10-30 09:43:04'
注:不加参数时,默认就是输出当前的时间,即 time.strftime('%Y-%m-%d %H:%M:%S')

2、自定义时间,多用于数据库查询

# 设置一个时间字符串
date_str = "2015-01-01 12:00:00"
print date_str

# 将时间字符串转换为时间数组
date_array = time.strptime(date_str,"%Y-%m-%d %H:%M:%S")
print date_array

# 将时间数组转换为时间戳
date_stamp = time.mktime(date_array)
print date_stamp

3、比较两个时间的差值

输入:
    start = time.time()
    time.sleep(10)
    end = time.time()
    print end - start

输出:
    10.0014948845(秒)

重点函数

time.time()
返回当前时间的时间戳

time.localtime([secs])
将一个时间戳转换成一个当前时区的struct_time,如果seconds参数未输入,则以当前时间为转换标准;未提供secs参数时,按当前时间为准

time.mktime(t)
将一个struct_time转换为时间戳,如下time.localtime接收一个时间戳返回一个struct_time,而time.mktime接收一个struct_time,返回一个时间戳

time.strftime(format[, t])
将指定的struct_time(默认为当前时间),根据指定的格式化字符串输出
t未指定,传入time.localtime()作为默认参数

datetime

1、时间戳与当前时间格式化

当前时间:print datetime.datetime.now()
输出:datetime.datetime(2018, 10, 30, 9, 38, 15, 687000), 

当前时间格式化:
    datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
    datetime.datetime.today().strftime('%Y-%m-%d %H:%M:%S')

时间戳的格式化:
    datetime.datetime.fromtimestamp(time.time()).strftime('%Y-%m-%d %H:%M:%S')

时间数组:
    datetime.datetime.now().timetuple()
    time.struct_time(tm_year=2018, tm_mon=10, tm_mday=30, tm_hour=9, tm_min=43, tm_sec=12, tm_wday=4, tm_yday=227, tm_isdst=-1)

获取时间戳:
    time.mktime(datetime.datetime.now().timetuple())

2、时间差计算

加一天:
    (datetime.datetime.now()+datetime.timedelta(days=1)).strftime("%Y-%m-%
d %H:%M:%S")
输出:2018-10-31 9:52:42

加一小时:
(datetime.datetime.now()+datetime.timedelta(hours=1)).strftime("%Y-%m-
%d %H:%M:%S")

加一分钟:
(datetime.datetime.now()+datetime.timedelta(minutes=1)).strftime("%Y-%
m-%d %H:%M:%S")

同理:
    减一小时:
    (datetime.datetime.now()-datetime.timedelta(hours=1)).strftime("%Y-%m-
%d %H:%M:%S")

3、比较两个时间的差值

输入:
    starttime = datetime.datetime.now()
    endtime = datetime.datetime.now()
    print  (endtime - starttime).seconds

重点类

 datetime.date
是指年月日构成的日期,属性:year,month,和 day。

datetime.time
独立于任何特定的日子,假设每天都有24 * 60 * 60秒(这里没有“闰秒”的概念)。即时间。属性:hour,minute,second,microsecond,和tzinfo。

datetime.datetime
日期和时间的组合。属性:year,month, day,hour,minute,second,microsecond,和tzinfo。

datetime.timedelta
表示两个时间之间的差异的持续。

相关内容

热门资讯

应急演练强保障,蔡甸供电精准守... 极目新闻通讯员 胡莉娜 张书烨 “设备温度正常、负荷数据稳定,UPS电源运行无异常,双电源切换试验圆...
人工智能在医疗领域的应用与挑战 人工智能在医疗领域的应用与挑战 一、人工智能在医疗中的主要应用 人工智能正逐步改变传统医疗模式,其核...
原创 每... 放眼夜空,一场看不见的太空大戏正在上演,SpaceX公司旗下的“星链”卫星正以惊人速度坠入地球大气层...
每年这个时候,民进党总要幼稚地... 一年一度的海峡论坛即将在厦门如期举办,作为两岸民间交流的重要盛会,论坛始终聚焦基层对接、民生互通与青...
网红“阿全哥”车祸离世,留下4... 极目新闻记者 杜光然近日,家属通过网红“双山阿全哥”的账号发布讣告称,5月底,44岁的阿全哥因车祸不...
致命超载:8名蓝莓采摘女工殒命... 澎湃新闻记者 陈蕾 编辑 黄霁洁 实习生 余乐 元珂盈 冼浩新 王圣铭天还没亮,60岁的农妇王盛兰摸...
中外人士共话AI赋能全球航运新... 转自:新华社 新华财经天津6月6日电(杨文 包庆龄) “人工智能(AI)正在深刻改变港口运营的模式,...
我科学家找到深海水虱抗饿的绝招 深海水虱是一类生活在深海中的甲壳动物,因保持世界上最长的绝食时间纪录(可达5年以上)而闻名。近日,我...
俄石油巨头CEO:霍尔木兹海峡... 据路透社6月6日报道,俄罗斯石油公司(Rosneft)首席执行官伊戈尔·谢钦在圣彼得堡国际经济论坛上...
原创 什... 近日,有机构发布了4月份,国内线上家用路由器市场情况。 从销量来看,一共卖出了86.2万台,同比下滑...