获取当前时间格式:
import time
currentTime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
# 2018-11-08 16:15:29
from datetime import datetime
currentTime = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
# 2018-11-08 16:15:29
1、10位时间戳获取方法:
>>> import time
>>> t = time.time()
>>> print t
1436428326.76
>>> print int(t)
1436428326
>>>
2、13位时间戳获取方法:
(1)默认情况下python的时间戳是以秒为单位输出的float
>>>
>>> import time
>>> time.time()
1436428275.207596
>>>
通过把秒转换毫秒的方法获得13位的时间戳:
import time
millis = int(round(time.time() * 1000)) # round()是四舍五入
millis = round(time.time() * 1000)
print millis
内置库datetime
from datetime import datetime
获取当前日期和时间
now = datetime.now()
print(now)
>>>now
>>>datetime.datetime(2019, 12, 10, 14, 49,59,735728)
获取指定日期和时间
dt = datetime(2015, 4, 19, 12, 20,59)
# print(dt)
>>>dt
>>>datetime.datetime(2015, 4, 19, 12, 20,59)
时间格式转换
# 把datetime转换为timestamp
dt = datetime(2015, 4, 19, 12, 20,59)
ts = dt.timestamp()
>>>ts >>>1429417259.0
timestamp转换为datetime
t = 1429417227.0
date= datetime.fromtimestamp(t)
>>>date
>>>2015-04-19 12:20:27
str转换为datetime
cday = datetime.strptime('2019-01-01 12:00:01','%Y-%m-%d %H:%M:%S')
>>>cday
>>>2019-01-01 12:00:01
datetime转换为str
now = datetime.now()
print(now.strftime('%a, %b %d %H:%M'))
print(now.strftime('%Y-%m-%d %H:%M:%S'))
时间加减
datetime加减
ps:timedelta不支持month和year
from datetime import datetime, timedelta
now = datetime.now()
print(now)
print(now + timedelta(hours=10))
print( now - timedelta(days=1))
print(now+timedelta(days=2, hours=12))