返回顶部

python之时间模块

python之时间模块

Python的时间模块是Python的内置模块,通常用的是time和datetime。若是用shell表示则用date +‘%F %T’表示或其他选项形式

time时间分为三种格式:

1.时间戳: 从1970到现在经过的秒数; 用于时间间隔的计算

  #print(time.time()+86400*3)

2.格式化的字符串形式(按照某种格式显示的时间) 2022-06-03 12:12:12 ;用于展示时间

3.结构化的时间用于单独获取时间的某一部分

时间格式转换:

1. 结构化的时间格式(struct_time) >>转换>> 时间戳格式

2.时间戳格式 >>>> 结构化时间格式(struct_time)

3.结构化时间(struct_time) >>>> 格式化的字符串形式的时间格式

4.格式化的字符串形式的时间格式 >>>> 时间戳的时间格式

  #格式化的字符串形式的时间格式 >>结构化时间>> 时间戳的时间格式

    #格式化的字符串形式的时间格式 << 结构化时间 << 时间戳的时间格式

1 time模块

 

时间分为三种格式:
    1.时间戳: 从1970到现在经过的秒数  
        #print (time.time())
    2.格式化的字符串形式(按照某种格式显示的时间) 2022-06-03  12:12:12
        #print(time.strftime('%Y-%m-%d %H-%M-%S  %p'))
        #print(time.strftime('%Y-%m-%d %X'))
        #print(time.time()+86400*3)
    3.结构化的时间
        #res=time.localtime()
        #print(res)

>>>import time 
>>> print (time.time())
1654252321.9279916
>>> print(time.time()+86400*3)
1654512716.9964263
>>> print(time.strftime('%Y-%m-%d %H-%M-%S  %p'))
2022-06-03 18-35-21  PM
>>> print(time.strftime('%Y-%m-%d %X'))
2022-06-03 18:36:01
>>> res=time.localtime()
>>> print(res)
time.struct_time(tm_year=2022, tm_mon=6, tm_mday=3, tm_hour=18, tm_min=38, tm_sec=49, tm_wday=4, tm_yday=154, tm_isdst=0)

 

2 datetime模块

 

import datetime
print(datetime.datetime.now())

>>> import datetime
>>> print(datetime.datetime.now())
2022-06-03 18:49:40.382410
>>> print(datetime.datetime.now()+datetime.timedelta(days=3))
2022-06-06 18:55:16.386932
>>> print(datetime.datetime.now()+datetime.timedelta(days=-3))
2022-05-31 18:56:20.013791
>>> print(datetime.datetime.now()-datetime.timedelta(days=3))
2022-05-31 18:58:32.398548
>>> print(datetime.datetime.now()+datetime.timedelta(weeks=3))
2022-06-24 18:59:25.315092

 

3 补充 time 和datetime

print(time.localtime())        #本地时间
print(time.gmtime())          #世界标准时间

>>> print(time.localtime()) #本地时间
time.struct_time(tm_year=2022, tm_mon=6, tm_mday=3, tm_hour=19, tm_min=27, tm_sec=18, tm_wday=4, tm_yday=154, tm_isdst=0)
>>> print(time.gmtime())    #世界标准时间
time.struct_time(tm_year=2022, tm_mon=6, tm_mday=3, tm_hour=11, tm_min=27, tm_sec=26, tm_wday=4, tm_yday=154, tm_isdst=0)
>>> print(time.localtime(666))
time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=11, tm_sec=6, tm_wday=3, tm_yday=1, tm_isdst=0)
>>> print(time.gmtime(666))
time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=11, tm_sec=6, tm_wday=3, tm_yday=1, tm_isdst=0)


import time
>>>time.sleep(3)
>>>print(time.asctime()) #相当于print(time.strftime('%Y-%m-%d %X')) Fri Jun 3 22:36:18 2022 import datetime >>> print (datetime.datetime.now()) 2022-06-03 22:40:42.603879 >>> print (datetime.datetime.utcnow()) 2022-06-03 14:40:42.604371 >>> print (datetime.datetime.fromtimestamp(6666)) 1970-01-01 09:51:06

 

4 时间格式转换

# 1.时间格式的转换
import time
s_time=time.localtime()
print(time.mktime(s_time))    # 结构化的时间格式(struct_time) >>转换>> 时间戳格式

>>> s_time=time.localtime()
>>> print(time.mktime(s_time))
1654254706.0

#时间戳格式 >>转换>>  结构化时间格式(struct_time)
tp_time=time.time()
print(time.localtime(tp_time))

>>> tp_time=time.time()
>>> print(time.localtime(tp_time))
time.struct_time(tm_year=2022, tm_mon=6, tm_mday=3, tm_hour=19, tm_min=24, tm_sec=8, tm_wday=4, tm_yday=154, tm_isdst=0)

# 结构化时间(struct_time) >>>>  格式化的字符串形式的时间格式
s_time=time.localtime()
print(time.strftime('%Y-%m-%d %H:%M:%S',s_time))

>>> s_time=time.localtime()
>>> print(time.strftime('%Y-%m-%d %H:%M:%S',s_time))
2022-06-03 19:38:58

# 格式化的字符串形式的时间格式 >>>> 结构化时间(struct_time) print(time.strptime('1994-12-12 12:12:12','%Y-%m-%d %H:%M:%S')) >>> print(time.strptime('1994-12-12 12:12:12','%Y-%m-%d %H:%M:%S')) time.struct_time(tm_year=1994, tm_mon=12, tm_mday=12, tm_hour=12, tm_min=12, tm_sec=12, tm_wday=0, tm_yday=346, tm_isdst=-1) # 格式化的字符串形式的时间格式 >>>> 时间戳的时间格式 #实现1994-12-12时间加7天显示 #格式化的字符串形式的时间格式 >>结构化时间>> 时间戳的时间格式timestamp struct_time=time.strptime('1994-12-12 12:12:12','%Y-%m-%d %H:%M:%S') print(time.mktime(struct_time)) timestamp=time.mktime(struct_time)+7*86400 print(timestamp) #格式化的字符串形式的时间格式 << 结构化时间 << 时间戳的时间格式timestamp res=time.strftime('%Y-%m-%d %X',time.localtime(timestamp)) print(res) >>> struct_time=time.strptime('1994-12-12 12:12:12','%Y-%m-%d %H:%M:%S') >>> print(time.mktime(struct_time)) 787205532.0 >>> timestamp=time.mktime(struct_time)+7*86400 >>> print(timestamp) 787810332.0 >>> res=time.strftime('%Y-%m-%d %X',time.localtime(timestamp)) >>> print(res) 1994-12-19 12:12:12

 

posted @ 2022-06-03 23:02  九尾cat  阅读(136)  评论(0编辑  收藏  举报