#!/usr/bin/env python
# coding:UTF-8
"""
@version: python3.x
@author:曹新健
@contact: 617349013@qq.com
@software: PyCharm
@file: time模块.py
@time: 2018/11/15 14:08
"""
import time
"""
1、返回struct_time实例的函数,该实例是具有nametuple接口的对象,可以使用索引或者属性名来获取对应
的年月日。包含的函数有:
time.gmtime([ sec ])
接收时间戳(1970纪元后经过的浮点秒数)并返回格林威治天文时间下的时间元组t。注:t.tm_isdst
始终为0
sec -- 转换为time.struct_time类型的对象的秒数,默认为0,即返回epoch时间(1970-1-1 00:00:00)
time.localtime()
接收时间戳(1970纪元后经过的浮点秒数)并返回当地时间下的时间元组t(t.tm_isdst可取0或1,取决
于当地当时是不是夏令时)
sec -- 转换为time.struct_time类型的对象的秒数。默认为0,即获取当前本地时间。跟中国跟
time.gmtime()获取值相差8个小时
time.strptime(str,fmt='%a %b %d %H:%M:%S %Y')
根据fmt的格式把一个时间字符串解析为时间元组
string -- 时间字符串。
format -- 格式化字符串
2、返回时间戳的函数:
time.time()
返回当前时间的时间戳(1970纪元后经过的浮点秒数)
time.mktime(tupletime)
接受时间元组并返回时间戳(1970纪元后经过的浮点秒数)
函数执行与gmtime(), localtime()相反的操作,它接收struct_time对象作为参数,返回用秒数来表示
时间的浮点数
t -- 结构化的时间或者完整的9位元组元素。
time.clock()
用以浮点数计算的秒数返回当前的CPU时间。用来衡量不同程序的耗时,比time.time()更有用。
在UNIX系统上,它返回的是"进程时间",它是用秒表示的浮点数(时间戳)。而在WINDOWS中,第一次
调用,返回的是进程运行的实际时间。而第二次之后的调用是自第一次调用以后到现在的运行时间。
(实际上是以WIN32上QueryPerformanceCounter()为基础,它比毫秒表示更为精确)
在win32系统下,这个函数返回的是真实时间(wall time),而在Unix/Linux下返回的是CPU时间。
3、返回字符串的函数:
time.asctime([t])
接受时间元组并返回一个可读的形式为"Tue Dec 11 18:07:14 2008"(2008年12月11日 周二18时07分
14秒)的24个字符的字符串。
t -- 9个元素的元组或者通过函数 gmtime() 或 localtime() 返回的时间值。
time.ctime([secs])
作用相当于asctime(localtime(secs)),未给参数相当于asctime()
sec -- 要转换为字符串时间的秒数
time.strftime(fmt[,tupletime])
接收以时间元组,并返回以可读字符串表示的当地时间,格式由fmt决定。
format -- 格式字符串。
t -- 可选的参数t是一个struct_time对象。默认是本地时间的truct_time对象
4、python中时间日期格式化符号:
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%% %号本身
"""
print(time.strftime("%Y-%m-%d %X"))
print(time.ctime())
print(time.localtime())