Python

Python的基础知识之时间处理-datetime

2017-12-18  本文已影响116人  摸着石头过河_崖边树

时间日历的处理三个模块,在使用之前都需要导入这么模块
1、 time模块
2、 calendar 模块
3、 datetime 模块


tmpdir__17_9_6_10_48_05.jpg

一、time模块

1.1 获取时间戳

result =time.time()
years = result/(24 * 60 * 60 * 365) + 1970
print(result,years)

1.2 获取时间元祖

result = time.localtime()
print(result)

1.3 获取格式时间日期

# 秒 ----》可读时间
t = time.time()
result = time.ctime(t)
print(result)


# 时间元祖---》可读时间
tt = time.localtime()
resutl = time.asctime(tt)
print(resutl)

1.4 格式化日期 < --- > 时间戳

# 时间元祖 ----> 格式化日期time.strftime(时间格式,时间元祖)
result = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())
print(result)

# 格式化日期 --> 时间元祖 time.strptime(日期格式字符串,日期格式)
pt =  time.strptime("2017-11-21 22:20:39","%Y-%m-%d %H:%M:%S")
resutl = time.mktime(pt)
print(pt,'\n',resutl)

1.5 获取CPU当前时间,统计代码执行时间time.clock()

startTime = time.clock()
for x in range(1,100000):
   print(x)
endTime = time.clock()
print(endTime - startTime)

1.6 休眠n秒

while True:
    print(time.time())
    time.sleep(1)

二、calendar 模块

import  calendar
#获取某月的日历信息
print(calendar.month(2017,6))

三、datetime 模块,标准库

datetime是Python处理日期和时间的标准库

3.1 获取当前的日期

print(datetime.datetime.now())
print(datetime.datetime.today())
t = datetime.datetime.now()
print(t.year,t.month,t.day)

3.2 计算的N天之后的日期

curretDate = datetime.datetime.today()
result = curretDate + datetime.timedelta(days=7)
print(curretDate,result)

3.3计算两个日期时间差

firstDate = datetime.datetime(2017,11,23,12,00,00)
secondDate = datetime.datetime(2017,11,22,12,00,00)
dela = firstDate - secondDate
print(dela,type(dela))
print(dela.total_seconds())

3.4 获取指定日期和时间

dt = datetime(2015,1,1,12,12,12)
print(dt)

3.5 datetime转换为timestamp

print(now.timestamp())
print(dt.timestamp())

3.6 timestamp转换为datetime

time = 1509611937.0
print(datetime.fromtimestamp(time)) # 本地时间 + 8
print(datetime.utcfromtimestamp(time)) # UTC时间

3.7 本地时间和UTC时间的转化

from datetime import  timedelta,timezone,datetime

# 拿到UTC时间,并强制设置时区为UTC+0:00:
utc_dt = datetime.utcnow().replace(tzinfo = timezone.utc)
print(utc_dt)

# 将转换时区为北京时间
bj_dt = utc_dt.astimezone(timezone(timedelta(hours=8)))
print(bj_dt)

如果需要了解更多Python知识,请查看
Python的基础知识之常用类型-字典
Python的基础知识之常用类型-列表
Python的基础知识之常用类型-字符串
Python的基础知识之常用类型-元祖

最后赠言

学无止境,学习Python的伙伴可以多多交流

上一篇下一篇

猜你喜欢

热点阅读