对于时间如何使用似乎一直是人们不断追寻和探究的问题,不要等到错过最有活力的青春才后悔呀。在python中,也有时间需要我们去处理,相信大家对time不管是在学校学习的时候,还是在python的学习中都是很常见的。小编不知道大家有没有具体掌握time的用法,所以整理出来一起学习下。
在time模块中,时间有三种表现形式:
时间戳,一般指Unix时间戳,是从1970年开始到现在的秒数。
本地时间的struct_time形式:一个长度为11的命名元组,第一位为年,第二位为月....
UTC时间的struct_time形式:一个长度为11的命名元组,类似于上个,只不过为UTC时间
其中后两者的类型一致,区别在于一个是本地时间(localtime),一个是utc时间。
各种时间形式的获取方式:
print("time stamp:", time.time()) # 时间戳:1479193181.829338 print("local time:", time.localtime()) # struct_time类型的本地时间 time.struct_time(tm_year=2016, tm_mon=11, tm_mday=15, tm_hour=14, tm_min=59, tm_sec=41, tm_wday=1, tm_yday=320, tm_isdst=0) print("utc time:", time.gmtime()) # struct_time类型的utc时间 time.struct_time(tm_year=2016, tm_mon=11, tm_mday=15, tm_hour=6, tm_min=59, tm_sec=41, tm_wday=1, tm_yday=320, tm_isdst=0)
这里可以看出,本地时间(北京时间)和UTC时间相差8个小时。
各种时间形式的转换:
time_stamp = time.time() # 时间戳 local_time = time.localtime(time_stamp)# 时间戳转struct_time类型的本地时间 utc_time = time.gmtime(time_stamp) # 时间戳转struct_time类型的utc时间 time_stamp_1 = time.mktime(local_time) # struct_time类型的本地时间转时间戳 time_stamp_2 = calendar.timegm(utc_time)# struct_time类型的utc时间转时间戳 print(time_stamp, time_stamp_1, time_stamp_2)
各种时间形式和字符串之间的转换:
print(time.ctime(time_stamp)) # 时间戳转字符串(本地时间字符串) print(time.asctime(local_time)) # struct_time类型的本地时间转字符串 print(time.asctime(utc_time)) # struct_time类型的utc时间转字符串 # struct_time类型的本地时间转字符串:自定义格式 print(time.strftime("%Y-%m-%d, %H:%M:%S, %w", local_time)) # struct_time类型的utc时间转字符串:自定义格式 print(time.strftime("%Y-%m-%d, %H:%M:%S, %w", utc_time)) struct_time = time.strptime("2016-11-15, 15:32:12, 2", "%Y-%m-%d, %H:%M:%S, %w") # 字符串转struct_time类型
今天对于python3中的time学习内容就是这些了,因为是python中的基础内容,和时间对于我们的意义一样重要,所以需要牢固掌握。